Îļþ²¢·¢(ÈÕÖ¾´¦Àí)--¶ÓÁÐ--Redis+Log4Net
Redis¼ò½é
RedisÊÇÒ»¸ö¿ªÔ´µÄ£¬Ê¹ÓÃCÓïÑÔ±àд£¬ÃæÏò¡°¼ü/Öµ¡±¶ÔÀàÐÍÊý¾ÝµÄ·Ö²¼Ê½NoSQLÊý¾Ý¿âϵͳ£¬ÌصãÊǸßÐÔÄÜ£¬³Ö¾Ã´æ´¢£¬ÊÊÓ¦¸ß²¢·¢µÄÓ¦Óó¡¾°¡£Redis´¿´âΪӦÓöø²úÉú£¬ËüÊÇÒ»¸ö¸ßÐÔÄܵÄkey-valueÊý¾Ý¿â,²¢ÇÒÌṩÁ˶àÖÖÓïÑÔµÄAPI
ÐÔÄܲâÊÔ½á¹û±íʾSET²Ù×÷ÿÃëÖÓ¿É´ï110000´Î£¬GET²Ù×÷ÿÃë81000´Î£¨µ±È»²»Í¬µÄ·þÎñÆ÷ÅäÖÃÐÔÄܲ»Í¬£©¡£
redisĿǰÌṩÎåÖÖÊý¾ÝÀàÐÍ£ºstring(×Ö·û´®),list£¨Á´±í£©, Hash£¨¹þÏ££©,set£¨¼¯ºÏ£©¼°zset(sorted
set) £¨ÓÐÐò¼¯ºÏ£©
RedisÓëMemcachedµÄ±È½Ï.
1.MemcachedÊǶàỊ̈߳¬¶øRedisʹÓõ¥Ïß³Ì.
2.MemcachedʹÓÃÔ¤·ÖÅäµÄÄÚ´æ³ØµÄ·½Ê½£¬RedisʹÓÃÏÖ³¡ÉêÇëÄÚ´æµÄ·½Ê½À´´æ´¢Êý¾Ý£¬²¢ÇÒ¿ÉÒÔÅäÖÃÐéÄâÄÚ´æ¡£
3.Redis¿ÉÒÔʵÏֳ־û¯£¬Ö÷´Ó¸´ÖÆ£¬ÊµÏÖ¹ÊÕϻָ´¡£
4.MemcachedÖ»ÊǼòµ¥µÄkeyÓëvalue,µ«ÊÇRedisÖ§³ÖÊý¾ÝÀàÐͱȽ϶ࡣ
RedisµÄ´æ´¢·ÖΪÄÚ´æ´æ´¢¡¢´ÅÅÌ´æ´¢ .´ÓÕâÒ»µã£¬Ò²ËµÃ÷ÁËRedisÓëMemcachedÊÇÓÐÇø±ðµÄ¡£Redis
ÓëMemcachedÒ»Ñù£¬ÎªÁ˱£Ö¤Ð§ÂÊ£¬Êý¾Ý¶¼ÊÇ»º´æÔÚÄÚ´æÖС£Çø±ðµÄÊÇredis»áÖÜÆÚÐԵİѸüеÄÊý¾ÝдÈë´ÅÅÌ»òÕß°ÑÐÞ¸Ä
²Ù×÷дÈë×·¼ÓµÄ¼Ç¼Îļþ£¬²¢ÇÒÔÚ´Ë»ù´¡ÉÏʵÏÖÁËmaster-slave(Ö÷´Ó)ͬ²½¡£
RedisÓÐÁ½ÖÖ´æ´¢·½Ê½£¬Ä¬ÈÏÊÇsnapshot·½Ê½£¬ÊµÏÖ·½·¨ÊǶ¨Ê±½«ÄÚ´æµÄ¿ìÕÕ(snapshot)³Ö¾Ã»¯µ½Ó²ÅÌ£¬ÕâÖÖ·½·¨È±µãÊdz־û¯Ö®ºóÈç¹û³öÏÖcrashÔò»á¶ªÊ§Ò»¶ÎÊý¾Ý¡£Òò´ËÔÚÍêÃÀÖ÷ÒåÕßµÄÍÆ¶¯ÏÂ×÷ÕßÔö¼ÓÁËaof·½Ê½¡£aof¼´append
only mode£¬ÔÚдÈëÄÚ´æÊý¾ÝµÄͬʱ½«²Ù×÷ÃüÁî±£´æµ½ÈÕÖ¾Îļþ£¬ÔÚÒ»¸ö²¢·¢¸ü¸ÄÉÏÍòµÄϵͳÖУ¬ÃüÁîÈÕÖ¾ÊÇÒ»¸ö·Ç³£ÅÓ´óµÄÊý¾Ý£¬¹ÜÀíά»¤³É±¾·Ç³£¸ß£¬»Ö¸´Öؽ¨Ê±¼ä»á·Ç³£³¤£¬ÕâÑùµ¼ÖÂʧȥaof¸ß¿ÉÓÃÐÔ±¾Òâ¡£ÁíÍâ¸üÖØÒªµÄÊÇRedisÊÇÒ»¸öÄÚ´æÊý¾Ý½á¹¹Ä£ÐÍ£¬ËùÓеÄÓÅÊÆ¶¼Êǽ¨Á¢ÔÚ¶ÔÄڴ渴ÔÓÊý¾Ý½á¹¹¸ßЧµÄÔ×Ó²Ù×÷ÉÏ£¬ÕâÑù¾Í¿´³öaofÊÇÒ»¸ö·Ç³£²»Ðµ÷µÄ²¿·Ö¡£
ÆäʵaofÄ¿µÄÖ÷ÒªÊÇÊý¾Ý¿É¿¿ÐÔ¼°¸ß¿ÉÓÃÐÔ.
Redis°²×°
ÎÄÕµÄ×îºóÎÒÌṩÁËÏÂÔØ°ü£¬µ±È»ÄãÒ²¿ÉÒÔÈ¥¹ÙÍøÏÂÔØ×îа汾µÄRedis https://github.com/dmajkic/redis/downloads
½«·þÎñ³ÌÐò¿½±´µ½Ò»¸ö´ÅÅÌÉϵÄĿ¼£¬ÈçÏÂͼ£º

Îļþ˵Ã÷£º
redis-server.exe£º·þÎñ³ÌÐò
redis-check-dump.exe£º±¾µØÊý¾Ý¿â¼ì²é
redis-check-aof.exe£º¸üÐÂÈÕÖ¾¼ì²é
redis-benchmark.exe£ºÐÔÄܲâÊÔ£¬ÓÃÒÔÄ£ÄâͬʱÓÉN¸ö¿Í»§¶Ë·¢ËÍM¸ö SETs/GETs
²éѯ.
redis-cli.exe£º ·þÎñ¶Ë¿ªÆôºó£¬ÎÒÃǵĿͻ§¶Ë¾Í¿ÉÒÔÊäÈë¸÷ÖÖÃüÁî²âÊÔÁË
1¡¢´ò¿ªÒ»¸öcmd´°¿Ú£¬Ê¹ÓÃcdÃüÁîÇл»µ½Ö¸¶¨Ä¿Â¼£¨F:\Redis£©ÔËÐÐ redis-server.exe
redis.conf
2¡¢ÖØÐ´ò¿ªÒ»¸öcmd´°¿Ú£¬Ê¹ÓÃcdÃüÁîÇл»µ½Ö¸¶¨Ä¿Â¼£¨F:\Redis£©ÔËÐÐ redis-cli.exe
-h 127.0.0.1 -p 6379£¬ÆäÖÐ 127.0.0.1ÊDZ¾µØip£¬6379ÊÇredis·þÎñ¶ËµÄĬÈ϶˿Ú
£¨ÕâÑù¿ÉÒÔ¿ªÆôÒ»¸ö¿Í»§¶Ë³ÌÐò½øÐÐÌØÊâÖ¸ÁîµÄ²âÊÔ£©.
¿ÉÒÔ½«´Ë·þÎñÉèÖÃΪwindowsϵͳ·þÎñ£¬ÏÂÔØRedis·þÎñ°²×°Èí¼þ£¬°²×°¼´¿É¡££¨https://github.com/rgl/redis/downloads
£©

°²×°Íê³ÉRedis·þÎñºó£¬ÎÒÃÇ»áÔÚ¼ÆËã»úµÄ·þÎñÀïÃæ¿´µ½

È»ºóÆô¶¯´Ë·þÎñ¡£
½ÓÏÂÀ´ÔÚʹÓÃRedisʱ£¬»¹ÐèÒªÏÂÔØC#Çý¶¯£¨Ò²¾ÍÊÇC#¿ª·¢¿â£©,ÈçÏÂͼ£º

Redis³£ÓÃÊý¾ÝÀàÐÍ
ʹÓÃRedis£¬ÎÒÃDz»ÓÃÔÚÃæ¶Ô¹¦Äܵ¥µ÷µÄÊý¾Ý¿âʱ£¬°Ñ¾«Á¦·ÅÔÚÈçºÎ°Ñ´óÏó·Å½ø±ùÏäÕâÑùµÄÎÊÌâÉÏ£¬¶øÊÇÀûÓÃRedisÁé»î¶à±äµÄÊý¾Ý½á¹¹ºÍÊý¾Ý²Ù×÷£¬Îª²»Í¬µÄ´óÏó¹¹½¨²»Í¬µÄ±ùÏä¡£
Redis×îΪ³£ÓõÄÊý¾ÝÀàÐÍÖ÷ÒªÓÐÒÔÏÂÎåÖÖ£º
String
Hash
List
Set
Sorted set
StringÀàÐÍ
StringÊÇ×î³£ÓõÄÒ»ÖÖÊý¾ÝÀàÐÍ£¬ÆÕͨµÄkey/value´æ´¢¶¼¿ÉÒÔ¹éΪ´ËÀà ¡£Ò»¸öKey¶ÔÓ¦Ò»¸öValue,stringÀàÐÍÊǶþ½øÖư²È«µÄ¡£RedisµÄstring¿ÉÒÔ°üº¬ÈκÎÊý¾Ý£¬±ÈÈçjpgͼƬ(Éú³É¶þ½øÖÆ)»òÕßÐòÁл¯µÄ¶ÔÏó¡£»ù±¾²Ù×÷ÈçÏ£º
var client = new RedisClient("127.0.0.1", 6379); 2. client.Set<int>("pwd", 1111); 3. int pwd=client.Get<int>("pwd"); 4. Console.WriteLine(pwd); 5. 6.UserInfo userInfo = new UserInfo() { UserName = "zhangsan", UserPwd = "1111" };
<span style="font-family:ËÎÌå;">//</span>(µ×²ãʹÓÃjsonÐòÁл¯ ) 7.client.Set<UserInfo>("userInfo", userInfo); 8.UserInfo user=client.Get<UserInfo>("userInfo"); 9.Console.WriteLine(user.UserName); 10. 11.List<UserInfo> list = new List<UserInfo>() { new UserInfo()
{UserName="lisi",UserPwd="111"},new UserInfo(){UserName="wangwu",UserPwd="123"} }; 12.client.Set<List<UserInfo>>("list",list); 13.List<UserInfo>userInfoList=client.Get<List<UserInfo>>("list"); 14. 15. foreach (UserInfo userInfo in userInfoList) 16. { 17. Console.WriteLine(userInfo.UserName); 18. }
|
HashÀàÐÍ
HashÊÇÒ»¸östring ÀàÐ͵ÄfieldºÍvalueµÄÓ³Éä±í¡£hashÌØ±ðÊʺϴ洢¶ÔÏó¡£Ïà¶ÔÓÚ½«¶ÔÏóµÄÿ¸ö×ֶδæ³Éµ¥¸östring
ÀàÐÍ¡£Ò»¸ö¶ÔÏó´æ´¢ÔÚhashÀàÐÍÖлáÕ¼ÓøüÉÙµÄÄڴ棬²¢ÇÒ¿ÉÒÔ¸ü·½±ãµÄ´æÈ¡Õû¸ö¶ÔÏó¡£
×÷Ϊһ¸ökey value´æÔÚ£¬ºÜ¶à¿ª·¢Õß×ÔÈ»µÄʹÓÃset/get·½Ê½À´Ê¹ÓÃRedis£¬Êµ¼ÊÉÏÕâ²¢²»ÊÇ×îÓÅ»¯µÄʹÓ÷½·¨¡£ÓÈÆäÔÚδÆôÓÃVMÇé¿öÏ£¬RedisÈ«²¿Êý¾ÝÐèÒª·ÅÈëÄڴ棬½ÚÔ¼ÄÚ´æÓÈÆäÖØÒª.

Ôö¼ÓÁËÐòÁл¯/·´ÐòÁл¯µÄ¿ªÏú£¬²¢ÇÒÔÚÐèÒªÐÞ¸ÄÆäÖÐÒ»ÏîÐÅϢʱ£¬ÐèÒª°ÑÕû¸ö¶ÔÏóÈ¡»Ø
RedisΪµ¥½ø³Ìµ¥Ïß³Ìģʽ£¬²ÉÓöÓÁÐģʽ½«²¢·¢·ÃÎʱäΪ´®ÐзÃÎÊ¡£Redis±¾ÉíûÓÐËøµÄ¸ÅÄRedis¶ÔÓÚ¶à¸ö¿Í»§¶ËÁ¬½Ó²¢²»´æÔÚ¾ºÕù
.. redisÊǸöµ¥Ï̵߳ijÌÐò£¬ÎªÊ²Ã´»áÕâô¿ìÄØ ?
1¡¢´óÁ¿Ï̵߳¼ÖµÄÏß³ÌÇл»¿ªÏú
2¡¢Ëø¡¢
3¡¢·Ç±ØÒªµÄÄڴ濽±´¡£
4. Redis¶àÑùµÄÊý¾Ý½á¹¹£¬Ã¿Öֽṹֻ×ö×Ô¼º°®×öµÄÊÂ.
Hash¶ÔÓ¦µÄValueÄÚ²¿Êµ¼Ê¾ÍÊÇÒ»¸öHashMap,ʵ¼ÊÕâÀï»áÓÐ2ÖÖ²»Í¬ÊµÏÖ£¬Õâ¸öHashMapµÄ³ÉÔ±±È½ÏÉÙʱ,RedisΪÁ˽ÚÊ¡ÄÚ´æ»á²ÉÓÃÀàËÆÒ»Î¬Êý×éµÄ·½Ê½À´½ô´Õ´æ´¢£¬¶ø²»»á²ÉÓÃÕæÕýµÄHashMap½á¹¹£¬µ±³ÉÔ±Á¿Ôö´óʱ»á×Ô¶¯×ª³ÉÕæÕýµÄHashMap.
KeyÈÔÈ»ÊÇÓû§ID, valueÊÇÒ»¸öMap£¬Õâ¸öMapµÄkeyÊdzÉÔ±µÄÊôÐÔÃû£¬valueÊÇÊôÐÔÖµ£¬ÕâÑù¶ÔÊý¾ÝµÄÐ޸ĺʹæÈ¡¶¼¿ÉÒÔÖ±½Óͨ¹ýÆäÄÚ²¿MapµÄKey(RedisÀï³ÆÄÚ²¿MapµÄkeyΪfield),
Ò²¾ÍÊÇͨ¹ý key(Óû§ID) + field(ÊôÐÔ±êÇ©) ¾Í¿ÉÒÔ²Ù×÷¶ÔÓ¦ÊôÐÔÊý¾ÝÁË£¬¼È²»ÐèÒªÖØ¸´´æ´¢Êý¾Ý£¬Ò²²»»á´øÀ´ÐòÁл¯ºÍ·´ÐòÁл¯

1.client.SetEntryInHash("user", "userInfo", "aaaaaaaaaa"); 2.List<string> list = client.GetHashKeys("user"); 3.List<string> list = client.GetHashValues("userInfo");//»ñȡֵ 4.List<string> list = client.GetAllKeys();//»ñÈ¡ËùÓеÄkey¡£
|
RedisΪ²»Í¬Êý¾ÝÀàÐÍ·Ö±ðÌṩÁËÒ»×é²ÎÊýÀ´¿ØÖÆÄÚ´æÊ¹Óã¬ÎÒÃÇÔÚÇ°ÃæÌáµ½¹ýµÄRedis HashµÄvalueÄÚ²¿ÊÇÒ»¸ö
HashMap,Èç¹û¸ÃMapµÄ³ÉÔ±±È½ÏÉÙ£¬Ôò»á²ÉÓÃһάÊý×éµÄ·½Ê½À´½ô´Õ´æ´¢¸ÃMAP£¬Ê¡È¥ÁË´óÁ¿Ö¸ÕëµÄÄڴ濪Ïú£¬Õâ¸ö²ÎÊýÔÚredis,confÅäÖÃÎļþÖÐÏÂÃæ2Ïî¡£
Hash-max-zipmap-entries 64
Hash-max-zipmap-value 512.
º¬ÒåÊǵ±valueÕâ¸öMapÄÚ²¿²»³¬¹ý¶àÉÙ¸ö³ÉԱʱ»á²ÉÓÃÏßÐÔ½ô´Õ¸ñʽ´æ´¢£¬Ä¬ÈÏÊÇ64£¬¼´valueÄÚ²¿ÓÐ64¸öÒÔϵijÉÔ±¾ÍÊÇʹÓÃÏßÐÔ½ô´Õ´æ´¢£¬³¬¹ý¸ÃÖµ×Ô¶¯×ª³ÉÕæÕýµÄHashMap.
Hash-max-zipmap-valueº¬ÒåÊǵ±valueÕâ¸öMAPÄÚ²¿µÄÿ¸ö³ÉÔ±Öµ³¤¶È²»³¬¹ý¶àÉÙ×ֽھͻá²ÉÓÃÏßÐÔ½ô´Õ´æ´¢À´½ÚÊ¡¿Õ¼ä¡£ÒÔÉÏÁ½¸öÌõ¼þÈÎÒâÒ»¸öÌõ¼þ³¬¹ýÉèÖÃÖµ¶¼»áת³ÉÕæÕýµÄHashMap£¬Ò²¾Í²»»áÔÙ½ÚÊ¡ÄÚ´æÁË£¬Õâ¸öÖµÉèÖöàÉÙÐèҪȨºâ£¬HashMapµÄÓÅÊÆ¾ÍÊDzéÕҺͲÙ×÷ʱ¼ä¶Ì¡£
Ò»¸ökey¿É¶ÔÓ¦¶à¸öfield£¬Ò»¸öfield¶ÔÓ¦Ò»¸övalue
ÕâÀïͬʱÐèҪעÒ⣬RedisÌṩÁ˽ӿÚ(hgetall)¿ÉÒÔÖ±½ÓÈ¡µ½È«²¿µÄÊôÐÔÊý¾Ý,µ«ÊÇÈç¹ûÄÚ²¿MapµÄ³ÉÔ±ºÜ¶à£¬ÄÇÃ´Éæ¼°µ½±éÀúÕû¸öÄÚ²¿MapµÄ²Ù×÷£¬ÓÉÓÚRedisµ¥Ïß³ÌÄ£Ð͵ÄÔµ¹Ê£¬Õâ¸ö±éÀú²Ù×÷¿ÉÄÜ»á±È½ÏºÄʱ£¬¶øÁíÆäËü¿Í»§¶ËµÄÇëÇóÍêÈ«²»ÏìÓ¦£¬ÕâµãÐèÒª¸ñÍâ×¢Òâ
½¨ÒéʹÓöÔÏóÀà±ðºÍID¹¹³É¼üÃû£¬Ê¹ÓÃ×ֶαíʾ¶ÔÏóÊôÐÔ£¬×Ö
¶ÎÖµ´æ´¢ÊôÐÔÖµ£¬ÀýÈ磺car:2 price 500
ListÀàÐÍ
listÊÇÒ»¸öÁ´±í½á¹¹£¬Ö÷Òª¹¦ÄÜÊÇpush,pop,»ñȡһ¸ö·¶Î§µÄËùÓеÄÖµµÈ£¬²Ù×÷ÖÐkeyÀí½âΪÁ´±íÃû×Ö¡£
RedisµÄlistÀàÐÍÆäʵ¾ÍÊÇÒ»¸öÿ¸ö×ÓÔªËØ¶¼ÊÇstringÀàÐ͵ÄË«ÏòÁ´±í¡£ÎÒÃÇ¿ÉÒÔͨ¹ýpush,pop²Ù×÷´ÓÁ´±íµÄÍ·²¿»òÕßβ²¿Ìí¼Óɾ³ýÔªËØ£¬ÕâÑùlist¼È¿ÉÒÔ×÷Ϊջ£¬ÓÖ¿ÉÒÔ×÷Ϊ¶ÓÁС£Redis
listµÄʵÏÖΪһ¸öË«ÏòÁ´±í£¬¼´¿ÉÒÔÖ§³Ö·´Ïò²éÕҺͱéÀú£¬¸ü·½±ã²Ù×÷£¬²»¹ý´øÀ´Á˲¿·Ö¶îÍâµÄÄڴ濪Ïú£¬RedisÄÚ²¿µÄºÜ¶àʵÏÖ£¬°üÀ¨·¢ËÍ»º³å¶ÓÁеÈÒ²¶¼ÊÇÓõÄÕâ¸öÊý¾Ý½á¹¹
//¶ÓÁÐʹÓà 2. 3. client.EnqueueItemOnList("name", "zhangsan"); 4. client.EnqueueItemOnList("name", "lisi"); 5. int count= client.GetListCount("name"); 6. for (int i = 0; i < count; i++) 7. { 8. Console.WriteLine(client.DequeueItemFromList("name")); 9. } 10. 11.//ջʹÓà 12. client.PushItemToList("name2", "wangwu"); 13. client.PushItemToList("name2", "maliu"); 14. int count = client.GetListCount("name2"); 15. for (int i = 0; i < count; i++) 16. { 17. Console.WriteLine(client.PopItemFromList("name2")); 18. }
|
SetÀàÐÍ
ËüÊÇstringÀàÐ͵ÄÎÞÐò¼¯ºÏ¡£setÊÇͨ¹ýhash tableʵÏֵģ¬Ìí¼Ó£¬É¾³ýºÍ²éÕÒ,¶Ô¼¯ºÏÎÒÃÇ¿ÉÒÔÈ¡²¢¼¯£¬½»¼¯£¬²î¼¯.
//¶ÔSetÀàÐͽøÐвÙ×÷ 2. client.AddItemToSet("a3", "ddd"); 3. client.AddItemToSet("a3", "ccc"); 4. client.AddItemToSet("a3", "tttt"); 5. client.AddItemToSet("a3", "sssh"); 6. client.AddItemToSet("a3", "hhhh"); 7. System.Collections.Generic.HashSet<string>hashset=client.GetAllItemsFromSet("a3"); 8. foreach (string str in hashset) 9. { 10. Console.WriteLine(str); 11. } 12. 13.//Çó²¢¼¯ 14.client.AddItemToSet("a3", "ddd"); 15. client.AddItemToSet("a3", "ccc"); 16. client.AddItemToSet("a3", "tttt"); 17. client.AddItemToSet("a3", "sssh"); 18. client.AddItemToSet("a3", "hhhh"); 19. client.AddItemToSet("a4", "hhhh"); 20. client.AddItemToSet("a4", "h777"); 21. System.Collections.Generic.HashSet<string>hashset= client.GetUnionFromSets(new string[] { "a3","a4"}); 22. 23. foreach (string str in hashset) 24. { 25. Console.WriteLine(str); 26. } 27. 28.//Çó½»¼¯ 29. System.Collections.Generic.HashSet<string> hashset = client.GetIntersectFromSets(new string[] { ¡°a3¡±, ¡°a4¡± }); 30. 31.//Çó²î¼¯. 32. System.Collections.Generic.HashSet<string> hashset = client.GetDifferencesFromSet("a3",new string[] { "a4"});
|
·µ»Ø´æÔÚÓÚµÚÒ»¸ö¼¯ºÏ£¬µ«ÊDz»´æÔÚÓÚÆäËû¼¯ºÏµÄÊý¾Ý¡£²î¼¯
Sorted SetÀàÐÍ
sorted set ÊÇsetµÄÒ»¸öÉý¼¶°æ±¾£¬ËüÔÚsetµÄ»ù´¡ÉÏÔö¼ÓÁËÒ»¸ö˳ÐòµÄÊôÐÔ£¬ÕâÒ»ÊôÐÔÔÚÌí¼ÓÐÞ¸Ä
.ÔªËØµÄʱºò¿ÉÒÔÖ¸¶¨£¬Ã¿´ÎÖ¸¶¨ºó£¬zset(±íʾÓÐÐò¼¯ºÏ)»á×Ô¶¯ÖØÐ°´ÐµÄÖµµ÷Õû˳Ðò¡£¿ÉÒÔÀí½âΪÓÐÁÐµÄ±í£¬Ò»Áдæ
value,Ò»ÁдæË³Ðò¡£²Ù×÷ÖÐkeyÀí½âΪzsetµÄÃû×Ö.
Redis sorted setµÄʹÓó¡¾°ÓësetÀàËÆ£¬Çø±ðÊÇset²»ÊÇ×Ô¶¯ÓÐÐòµÄ£¬¶øsorted
set¿ÉÒÔͨ¹ýÓû§¶îÍâÌṩһ¸öÓÅÏȼ¶(score)µÄ²ÎÊýÀ´Îª³ÉÔ±ÅÅÐò£¬²¢ÇÒÊDzåÈëÓÐÐòµÄ£¬¼´×Ô¶¯ÅÅÐò¡£µ±ÄãÐèÒªÒ»¸öÓÐÐòµÄ²¢ÇÒ²»Öظ´µÄ¼¯ºÏÁÐ±í£¬ÄÇô¿ÉÒÔÑ¡Ôñsorted
setÊý¾Ý½á¹¹£¬
1.client.AddItemToSortedSet("a5", "ffff"); 2. client.AddItemToSortedSet("a5","bbbb"); 3. client.AddItemToSortedSet("a5", "gggg"); 4. client.AddItemToSortedSet("a5", "cccc"); 5. client.AddItemToSortedSet("a5", "waaa"); 6. System.Collections.Generic.List<string> list =client.GetAllItemsFromSortedSet("a5"); 7. foreach (string str in list) 8. { 9. Console.WriteLine(str); 10. }
|
|