¡¾redisÊÇʲô¡¿
redisÊÇÒ»¸ö¿ªÔ´µÄ¡¢Ê¹ÓÃCÓïÑÔ±àдµÄ¡¢Ö§³ÖÍøÂç½»»¥µÄ¡¢¿É»ùÓÚÄÚ´æÒ²¿É³Ö¾Ã»¯µÄKey-ValueÊý¾Ý¿â¡£ redisµÄ¹ÙÍøµØÖ·£¬·Ç³£ºÃ¼Ç£¬ÊÇredis.io¡££¨ÌØÒâ²éÁËһϣ¬ÓòÃûºó׺ioÊôÓÚ¹ú¼ÒÓòÃû£¬ÊÇbritish
Indian Ocean territory£¬¼´Ó¢ÊôÓ¡¶ÈÑóÁìµØ£© Ŀǰ£¬VmwareÔÚ×ÊÖú×ÅredisÏîÄ¿µÄ¿ª·¢ºÍά»¤¡£
¡¾redisµÄ×÷ÕߺÎÐíÈËÒ²¡¿
¿ªÃżûɽ£¬ÏÈ¿´ÕÕÆ¬£º

ÊDz»ÊdzöºõÁËÄãµÄÒâÁÏ£¬àÅ£¬¸ßÊÖ×Ü»áÓÐЩµØ·½ÓëÖÚ²»Í¬µÄ¡£ Õâλ±ãÊÇredisµÄ×÷Õߣ¬Ëû½ÐSalvatore Sanfilippo£¬À´×ÔÒâ´óÀûµÄÎ÷Î÷Àﵺ£¬ÏÖÔÚ¾ÓסÔÚ¿¨ËþÄáÑÇ¡£Ä¿Ç°¹©Ö°ÓÚPivotal¹«Ë¾¡£ ËûʹÓõÄÍøÃûÊÇantirez£¬Èç¹ûÄãÓÐÐËȤ£¬¿ÉÒÔÈ¥ËûµÄ²©¿Í¹ä¹ä£¬µØÖ·ÊÇantirez.com£¬µ±È»Ò²¿ÉÒÔÈ¥followËûµÄgithub£¬µØÖ·ÊÇhttp://github.com/antirez¡£
¡¾ËÔÚʹÓÃredis¡¿
Blizzard¡¢digg¡¢stackoverflow¡¢github¡¢flickr ¡
¡¾Ñ§»á°²×°redis¡¿
´Óredis.ioÏÂÔØ×îаæredis-X.Y.Z.tar.gzºó½âѹ£¬È»ºó½øÈëredis-X.Y.ZÎļþ¼ÐºóÖ±½Ómake¼´¿É£¬°²×°·Ç³£¼òµ¥¡£ make³É¹¦ºó»áÔÚsrcÎļþ¼ÐϲúÉúһЩ¶þ½øÖÆ¿ÉÖ´ÐÐÎļþ£¬°üÀ¨redis-server¡¢redis-cliµÈµÈ£º
$
find . -type f -executable
./redis-benchmark //ÓÃÓÚ½øÐÐredisÐÔÄܲâÊԵŤ¾ß
./redis-check-dump //ÓÃÓÚÐÞ¸´³öÎÊÌâµÄdump.rdbÎļþ
./redis-cli //redisµÄ¿Í»§¶Ë
./redis-server //redisµÄ·þÎñ¶Ë
./redis-check-aof //ÓÃÓÚÐÞ¸´³öÎÊÌâµÄAOFÎļþ
./redis-sentinel //ÓÃÓÚ¼¯Èº¹ÜÀí |
¡¾Ñ§»áÆô¶¯redis¡¿
Æô¶¯redis·Ç³£¼òµ¥£¬Ö±½Ó./redis-server¾Í¿ÉÒÔÆô¶¯·þÎñ¶ËÁË£¬»¹¿ÉÒÔÓÃÏÂÃæµÄ·½·¨Ö¸¶¨Òª¼ÓÔØµÄÅäÖÃÎļþ£º
./redis-server
../redis.conf |
ĬÈÏÇé¿öÏ£¬redis-server»áÒÔ·ÇdaemonµÄ·½Ê½À´ÔËÐУ¬ÇÒĬÈÏ·þÎñ¶Ë¿ÚΪ6379¡£ ÓйØ×÷ÕßΪʲôѡÔñ6379×÷ΪĬÈ϶˿ڣ¬»¹ÓÐÒ»¶ÎÓÐȤµÄµä¹Ê£¬Ó¢ÓïºÃµÄͬѧ¿ÉÒÔ¿´¿´×÷ÕßÕâÆª²©ÎÄÖеĽâÊÍ¡£
¡¾Ê¹ÓÃredis¿Í»§¶Ë¡¿
ÎÒÃÇÖ±½Ó¿´Ò»¸öÀý×Ó£º
//ÕâÑùÀ´Æô¶¯redis¿Í»§¶ËÁË
$ ./redis-cli
//ÓÃsetÖ¸ÁîÀ´ÉèÖÃkey¡¢value
127.0.0.1:6379> set name "roc"
OK
//À´»ñÈ¡nameµÄÖµ
127.0.0.1:6379> get name
"roc"
//ͨ¹ý¿Í»§¶ËÀ´¹Ø±Õredis·þÎñ¶Ë
127.0.0.1:6379> shutdown
127.0.0.1:6379> |
¡¾redisÊý¾Ý½á¹¹ ¨C ¼ò½é¡¿
redisÊÇÒ»Öָ߼¶µÄkey:value´æ´¢ÏµÍ³£¬ÆäÖÐvalueÖ§³ÖÎåÖÖÊý¾ÝÀàÐÍ£º 1.×Ö·û´®£¨strings£© 2.×Ö·û´®ÁÐ±í£¨lists£© 3.×Ö·û´®¼¯ºÏ£¨sets£© 4.ÓÐÐò×Ö·û´®¼¯ºÏ£¨sorted sets£© 5.¹þÏ££¨hashes£© ¶ø¹ØÓÚkey£¬Óм¸¸öµãÒªÌáÐÑ´ó¼Ò£º 1.key²»ÒªÌ«³¤£¬¾¡Á¿²»Òª³¬¹ý1024×Ö½Ú£¬Õâ²»½öÏûºÄÄڴ棬¶øÇһήµÍ²éÕÒµÄЧÂÊ£» 2.keyÒ²²»ÒªÌ«¶Ì£¬Ì«¶ÌµÄ»°£¬keyµÄ¿É¶ÁÐԻήµÍ£» 3.ÔÚÒ»¸öÏîÄ¿ÖУ¬key×îºÃʹÓÃͳһµÄÃüÃûģʽ£¬ÀýÈçuser:10000:passwd¡£
¡¾redisÊý¾Ý½á¹¹ ¨C strings¡¿
ÓÐÈË˵£¬Èç¹ûֻʹÓÃredisÖеÄ×Ö·û´®ÀàÐÍ£¬ÇÒ²»Ê¹ÓÃredisµÄ³Ö¾Ã»¯¹¦ÄÜ£¬ÄÇô£¬redis¾ÍºÍmemcache·Ç³£·Ç³£µÄÏñÁË¡£Õâ˵Ã÷stringsÀàÐÍÊÇÒ»¸öºÜ»ù´¡µÄÊý¾ÝÀàÐÍ£¬Ò²ÊÇÈκδ洢ϵͳ¶¼±Ø±¸µÄÊý¾ÝÀàÐÍ¡£ ÎÒÃÇÀ´¿´Ò»¸ö×î¼òµ¥µÄÀý×Ó£º
set mystr "hello world!" //ÉèÖÃ×Ö·û´®ÀàÐÍ
get mystr //¶ÁÈ¡×Ö·û´®ÀàÐÍ |
×Ö·û´®ÀàÐ͵ÄÓ÷¨¾ÍÊÇÕâô¼òµ¥£¬ÒòΪÊǶþ½øÖư²È«µÄ£¬ËùÒÔÄãÍêÈ«¿ÉÒÔ°ÑÒ»¸öͼƬÎļþµÄÄÚÈÝ×÷Ϊ×Ö·û´®À´´æ´¢¡£ ÁíÍ⣬ÎÒÃÇ»¹¿ÉÒÔͨ¹ý×Ö·û´®ÀàÐͽøÐÐÊýÖµ²Ù×÷£º
127.0.0.1:6379>
set mynum "2"
OK
127.0.0.1:6379> get mynum
"2"
127.0.0.1:6379> incr mynum
(integer) 3
127.0.0.1:6379> get mynum
"3" |
¿´£¬ÔÚÓöµ½ÊýÖµ²Ù×÷ʱ£¬redis»á½«×Ö·û´®ÀàÐÍת»»³ÉÊýÖµ¡£ ÓÉÓÚINCRµÈÖ¸Áî±¾Éí¾Í¾ßÓÐÔ×Ó²Ù×÷µÄÌØÐÔ£¬ËùÒÔÎÒÃÇÍêÈ«¿ÉÒÔÀûÓÃredisµÄINCR¡¢INCRBY¡¢DECR¡¢DECRBYµÈÖ¸ÁîÀ´ÊµÏÖÔ×Ó¼ÆÊýµÄЧ¹û£¬¼ÙÈ磬ÔÚijÖÖ³¡¾°ÏÂÓÐ3¸ö¿Í»§¶Ëͬʱ¶ÁÈ¡ÁËmynumµÄÖµ£¨ÖµÎª2£©£¬È»ºó¶ÔÆäͬʱ½øÐÐÁ˼Ó1µÄ²Ù×÷£¬ÄÇô£¬×îºómynumµÄÖµÒ»¶¨ÊÇ5¡£²»ÉÙÍøÕ¾¶¼ÀûÓÃredisµÄÕâ¸öÌØÐÔÀ´ÊµÏÖÒµÎñÉϵÄͳ¼Æ¼ÆÊýÐèÇó¡£
¡¾redisÊý¾Ý½á¹¹ ¨C lists¡¿
redisµÄÁíÒ»¸öÖØÒªµÄÊý¾Ý½á¹¹½Ð×ölists£¬·Òë³ÉÖÐÎĽÐ×ö¡°ÁÐ±í¡±¡£ Ê×ÏÈÒªÃ÷È·Ò»µã£¬redisÖеÄlistsÔڵײãʵÏÖÉϲ¢²»ÊÇÊý×飬¶øÊÇÁ´±í£¬Ò²¾ÍÊÇ˵¶ÔÓÚÒ»¸ö¾ßÓÐÉϰÙÍò¸öÔªËØµÄlistsÀ´Ëµ£¬ÔÚÍ·²¿ºÍβ²¿²åÈëÒ»¸öÐÂÔªËØ£¬Æäʱ¼ä¸´ÔÓ¶ÈÊdz£Êý¼¶±ðµÄ£¬±ÈÈçÓÃLPUSHÔÚ10¸öÔªËØµÄlistsÍ·²¿²åÈëÐÂÔªËØ£¬ºÍÔÚÉÏǧÍòÔªËØµÄlistsÍ·²¿²åÈëÐÂÔªËØµÄËÙ¶ÈÓ¦¸ÃÊÇÏàͬµÄ¡£ ËäÈ»listsÓÐÕâÑùµÄÓÅÊÆ£¬µ«Í¬ÑùÓÐÆä±×¶Ë£¬ÄǾÍÊÇ£¬Á´±íÐÍlistsµÄÔªËØ¶¨Î»»á±È½ÏÂý£¬¶øÊý×éÐÍlistsµÄÔªËØ¶¨Î»¾Í»á¿ìµÃ¶à¡£
listsµÄ³£ÓòÙ×÷°üÀ¨LPUSH¡¢RPUSH¡¢LRANGEµÈ¡£ÎÒÃÇ¿ÉÒÔÓÃLPUSHÔÚlistsµÄ×ó²à²åÈëÒ»¸öÐÂÔªËØ£¬ÓÃRPUSHÔÚlistsµÄÓÒ²à²åÈëÒ»¸öÐÂÔªËØ£¬ÓÃLRANGEÃüÁî´ÓlistsÖÐÖ¸
//н¨Ò»¸ölist½Ð×ömylist£¬²¢ÔÚÁбíÍ·²¿²åÈëÔªËØ"1"
127.0.0.1:6379> lpush mylist "1"
//·µ»Øµ±Ç°mylistÖеÄÔªËØ¸öÊý
(integer) 1
//ÔÚmylistÓÒ²à²åÈëÔªËØ"2"
127.0.0.1:6379> rpush mylist "2"
(integer) 2
//ÔÚmylist×ó²à²åÈëÔªËØ"0"
127.0.0.1:6379> lpush mylist "0"
(integer) 3
//ÁгömylistÖдӱàºÅ0µ½±àºÅ1µÄÔªËØ
127.0.0.1:6379> lrange mylist 0 1
1) "0"
2) "1"
//ÁгömylistÖдӱàºÅ0µ½µ¹ÊýµÚÒ»¸öÔªËØ
127.0.0.1:6379> lrange mylist 0 -1
1) "0"
2) "1"
3) "2" |
¶¨Ò»¸ö·¶Î§À´ÌáÈ¡ÔªËØ¡£ÎÒÃÇÀ´¿´¼¸¸öÀý×Ó£º
listsµÄÓ¦ÓÃÏ൱¹ã·º£¬Ëæ±ã¾Ù¼¸¸öÀý×Ó£º 1.ÎÒÃÇ¿ÉÒÔÀûÓÃlistsÀ´ÊµÏÖÒ»¸öÏûÏ¢¶ÓÁУ¬¶øÇÒ¿ÉÒÔÈ·±£ÏȺó˳Ðò£¬²»±ØÏñMySQLÄÇÑù»¹ÐèҪͨ¹ýORDER
BYÀ´½øÐÐÅÅÐò¡£ 2.ÀûÓÃLRANGE»¹¿ÉÒԺܷ½±ãµÄʵÏÖ·ÖÒ³µÄ¹¦ÄÜ¡£ 3.ÔÚ²©¿ÍϵͳÖУ¬Ã¿Æ¬²©ÎĵįÀÂÛÒ²¿ÉÒÔ´æÈëÒ»¸öµ¥¶ÀµÄlistÖС£
¡¾redisÊý¾Ý½á¹¹ ¨C ¼¯ºÏ¡¿
redisµÄ¼¯ºÏ£¬ÊÇÒ»ÖÖÎÞÐòµÄ¼¯ºÏ£¬¼¯ºÏÖеÄÔªËØÃ»ÓÐÏȺó˳Ðò¡£ ¼¯ºÏÏà¹ØµÄ²Ù×÷Ò²ºÜ·á¸»£¬ÈçÌí¼ÓÐÂÔªËØ¡¢É¾³ýÒÑÓÐÔªËØ¡¢È¡½»¼¯¡¢È¡²¢¼¯¡¢È¡²î¼¯µÈ¡£ÎÒÃÇÀ´¿´Àý×Ó£º
//Ïò¼¯ºÏmysetÖмÓÈëÒ»¸öÐÂÔªËØ"one"
127.0.0.1:6379> sadd myset "one"
(integer) 1
127.0.0.1:6379> sadd myset "two"
(integer) 1
//Áгö¼¯ºÏmysetÖеÄËùÓÐÔªËØ
127.0.0.1:6379> smembers myset
1) "one"
2) "two"
//ÅжÏÔªËØ1ÊÇ·ñÔÚ¼¯ºÏmysetÖУ¬·µ»Ø1±íʾ´æÔÚ
127.0.0.1:6379> sismember myset "one"
(integer) 1
//ÅжÏÔªËØ3ÊÇ·ñÔÚ¼¯ºÏmysetÖУ¬·µ»Ø0±íʾ²»´æÔÚ
127.0.0.1:6379> sismember myset "three"
(integer) 0
//н¨Ò»¸öÐµļ¯ºÏyourset
127.0.0.1:6379> sadd yourset "1"
(integer) 1
127.0.0.1:6379> sadd yourset "2"
(integer) 1
127.0.0.1:6379> smembers yourset
1) "1"
2) "2"
//¶ÔÁ½¸ö¼¯ºÏÇó²¢¼¯
127.0.0.1:6379> sunion myset yourset
1) "1"
2) "one"
3) "2"
4) "two" |
¶ÔÓÚ¼¯ºÏµÄʹÓã¬Ò²ÓÐһЩ³£¼ûµÄ·½Ê½£¬±ÈÈ磬QQÓÐÒ»¸öÉç½»¹¦ÄܽÐ×ö¡°ºÃÓѱêÇ©¡±£¬´ó¼Ò¿ÉÒÔ¸øÄãµÄºÃÓÑÌù±êÇ©£¬±ÈÈç¡°´óÃÀÅ®¡±¡¢¡°ÍÁºÀ¡±¡¢¡°Å·°Í¡±µÈµÈ£¬Õâʱ¾Í¿ÉÒÔʹÓÃredisµÄ¼¯ºÏÀ´ÊµÏÖ£¬°Ñÿһ¸öÓû§µÄ±êÇ©¶¼´æ´¢ÔÚÒ»¸ö¼¯ºÏÖ®ÖС£
¡¾redisÊý¾Ý½á¹¹ ¨C ÓÐÐò¼¯ºÏ¡¿
redis²»µ«ÌṩÁËÎÞÐ輯ºÏ£¨sets£©£¬»¹ºÜÌåÌùµÄÌṩÁËÓÐÐò¼¯ºÏ£¨sorted sets£©¡£ÓÐÐò¼¯ºÏÖеÄÿ¸öÔªËØ¶¼¹ØÁªÒ»¸öÐòºÅ£¨score£©£¬Õâ±ãÊÇÅÅÐòµÄÒÀ¾Ý¡£ ºÜ¶àʱºò£¬ÎÒÃǶ¼½«redisÖеÄÓÐÐò¼¯ºÏ½Ð×özsets£¬ÕâÊÇÒòΪÔÚredisÖУ¬ÓÐÐò¼¯ºÏÏà¹ØµÄ²Ù×÷Ö¸Áî¶¼ÊÇÒÔz¿ªÍ·µÄ£¬±ÈÈçzrange¡¢zadd¡¢zrevrange¡¢zrangebyscoreµÈµÈ
ÀÏ¹æ¾Ø£¬ÎÒÃÇÀ´¿´¼¸¸öÉú¶¯µÄÀý×Ó£º
//ÐÂÔöÒ»¸öÓÐÐò¼¯ºÏmyzset£¬²¢¼ÓÈëÒ»¸öÔªËØbaidu.com£¬¸øËü¸³ÓèµÄÐòºÅÊÇ1£º
127.0.0.1:6379>
zadd myzset 1 baidu.com
(integer) 1
//ÏòmyzsetÖÐÐÂÔöÒ»¸öÔªËØ360.com£¬¸³ÓèËüµÄÐòºÅÊÇ3
127.0.0.1:6379> zadd myzset 3 360.com
(integer) 1
//ÏòmyzsetÖÐÐÂÔöÒ»¸öÔªËØgoogle.com£¬¸³ÓèËüµÄÐòºÅÊÇ2
127.0.0.1:6379> zadd myzset 2 google.com
(integer) 1
//ÁгömyzsetµÄËùÓÐÔªËØ£¬Í¬Ê±ÁгöÆäÐòºÅ£¬¿ÉÒÔ¿´³ömyzsetÒѾÊÇÓÐÐòµÄÁË¡£
127.0.0.1:6379> zrange myzset 0 -1 with scores
1) "baidu.com"
2) "1"
3) "google.com"
4) "2"
5) "360.com"
6) "3"
//Ö»ÁгömyzsetµÄÔªËØ
127.0.0.1:6379> zrange myzset 0 -1
1) "baidu.com"
2) "google.com"
3) "360.com" |
¡¾redisÊý¾Ý½á¹¹ ¨C ¹þÏ£¡¿
×îºóÒª¸ø´ó¼Ò½éÉܵÄÊÇhashes£¬¼´¹þÏ£¡£¹þÏ£ÊÇ´Óredis-2.0.0°æ±¾Ö®ºó²ÅÓеÄÊý¾Ý½á¹¹¡£ hashes´æµÄÊÇ×Ö·û´®ºÍ×Ö·û´®ÖµÖ®¼äµÄÓ³É䣬±ÈÈçÒ»¸öÓû§Òª´æ´¢ÆäÈ«Ãû¡¢ÐÕÊÏ¡¢ÄêÁäµÈµÈ£¬¾ÍºÜÊʺÏʹÓùþÏ£¡£ ÎÒÃÇÀ´¿´Ò»¸öÀý×Ó£º
//½¨Á¢¹þÏ££¬²¢¸³Öµ
127.0.0.1:6379> HMSET user:001 username antirez
password P1pp0 age 34
OK
//Áгö¹þÏ£µÄÄÚÈÝ
127.0.0.1:6379> HGETALL user:001
1) "username"
2) "antirez"
3) "password"
4) "P1pp0"
5) "age"
6) "34"
//¸ü¸Ä¹þÏ£ÖеÄijһ¸öÖµ
127.0.0.1:6379> HSET user:001 password 12345
(integer) 0
//ÔÙ´ÎÁгö¹þÏ£µÄÄÚÈÝ
127.0.0.1:6379> HGETALL user:001
1) "username"
2) "antirez"
3) "password"
4) "12345"
5) "age"
6) "34" |
ÓйØhashesµÄ²Ù×÷£¬Í¬ÑùºÜ·á¸»£¬ÐèҪʱ£¬´ó¼Ò¿ÉÒÔ´ÓÕâÀï²éѯ¡£
¡¾ÁÄÁÄredis³Ö¾Ã»¯ ¨C Á½ÖÖ·½Ê½¡¿
redisÌṩÁËÁ½Öֳ־û¯µÄ·½Ê½£¬·Ö±ðÊÇRDB£¨Redis DataBase£©ºÍAOF£¨Append
Only File£©¡£ RDB£¬¼ò¶øÑÔÖ®£¬¾ÍÊÇÔÚ²»Í¬µÄʱ¼äµã£¬½«redis´æ´¢µÄÊý¾ÝÉú³É¿ìÕÕ²¢´æ´¢µ½´ÅÅ̵ȽéÖÊÉÏ£» AOF£¬ÔòÊÇ»»ÁËÒ»¸ö½Ç¶ÈÀ´ÊµÏֳ־û¯£¬ÄǾÍÊǽ«redisÖ´ÐйýµÄËùÓÐдָÁî¼Ç¼ÏÂÀ´£¬ÔÚÏ´ÎredisÖØÐÂÆô¶¯Ê±£¬Ö»Òª°ÑÕâЩдָÁî´Óǰµ½ºóÔÙÖØ¸´Ö´ÐÐÒ»±é£¬¾Í¿ÉÒÔʵÏÖÊý¾Ý»Ö¸´ÁË¡£ ÆäʵRDBºÍAOFÁ½ÖÖ·½Ê½Ò²¿ÉÒÔͬʱʹÓã¬ÔÚÕâÖÖÇé¿öÏ£¬Èç¹ûredisÖØÆôµÄ»°£¬Ôò»áÓÅÏȲÉÓÃAOF·½Ê½À´½øÐÐÊý¾Ý»Ö¸´£¬ÕâÊÇÒòΪAOF·½Ê½µÄÊý¾Ý»Ö¸´ÍêÕû¶È¸ü¸ß¡£ Èç¹ûÄãûÓÐÊý¾Ý³Ö¾Ã»¯µÄÐèÇó£¬Ò²ÍêÈ«¿ÉÒԹرÕRDBºÍAOF·½Ê½£¬ÕâÑùµÄ»°£¬redis½«±ä³ÉÒ»¸ö´¿ÄÚ´æÊý¾Ý¿â£¬¾ÍÏñmemcacheÒ»Ñù¡£
¡¾ÁÄÁÄredis³Ö¾Ã»¯ ¨C RDB¡¿
RDB·½Ê½£¬Êǽ«redisijһʱ¿ÌµÄÊý¾Ý³Ö¾Ã»¯µ½´ÅÅÌÖУ¬ÊÇÒ»ÖÖ¿ìÕÕʽµÄ³Ö¾Ã»¯·½·¨¡£ redisÔÚ½øÐÐÊý¾Ý³Ö¾Ã»¯µÄ¹ý³ÌÖУ¬»áÏȽ«Êý¾ÝдÈëµ½Ò»¸öÁÙʱÎļþÖУ¬´ý³Ö¾Ã»¯¹ý³Ì¶¼½áÊøÁË£¬²Å»áÓÃÕâ¸öÁÙʱÎļþÌæ»»Éϴγ־û¯ºÃµÄÎļþ¡£ÕýÊÇÕâÖÖÌØÐÔ£¬ÈÃÎÒÃÇ¿ÉÒÔËæÊ±À´½øÐб¸·Ý£¬ÒòΪ¿ìÕÕÎļþ×ÜÊÇÍêÕû¿ÉÓõġ£ ¶ÔÓÚRDB·½Ê½£¬redis»áµ¥¶À´´½¨£¨fork£©Ò»¸ö×Ó½ø³ÌÀ´½øÐг־û¯£¬¶øÖ÷½ø³ÌÊDz»»á½øÐÐÈκÎIO²Ù×÷µÄ£¬ÕâÑù¾ÍÈ·±£ÁËredis¼«¸ßµÄÐÔÄÜ¡£ Èç¹ûÐèÒª½øÐдó¹æÄ£Êý¾ÝµÄ»Ö¸´£¬ÇÒ¶ÔÓÚÊý¾Ý»Ö¸´µÄÍêÕûÐÔ²»ÊǷdz£Ãô¸Ð£¬ÄÇRDB·½Ê½Òª±ÈAOF·½Ê½¸ü¼ÓµÄ¸ßЧ¡£ ËäÈ»RDBÓв»ÉÙÓŵ㣬µ«ËüµÄȱµãÒ²ÊDz»ÈݺöÊӵġ£Èç¹ûÄã¶ÔÊý¾ÝµÄÍêÕûÐԷdz£Ãô¸Ð£¬ÄÇôRDB·½Ê½¾Í²»Ì«ÊʺÏÄ㣬ÒòΪ¼´Ê¹Äãÿ5·ÖÖÓ¶¼³Ö¾Ã»¯Ò»´Î£¬µ±redis¹ÊÕÏʱ£¬ÈÔÈ»»áÓнü5·ÖÖÓµÄÊý¾Ý¶ªÊ§¡£ËùÒÔ£¬redis»¹ÌṩÁËÁíÒ»Öֳ־û¯·½Ê½£¬ÄǾÍÊÇAOF¡£
¡¾ÁÄÁÄredis³Ö¾Ã»¯ ¨C AOF¡¿
AOF£¬Ó¢ÎÄÊÇAppend Only File£¬¼´Ö»ÔÊÐí×·¼Ó²»ÔÊÐí¸ÄдµÄÎļþ¡£ ÈçÇ°Ãæ½éÉܵģ¬AOF·½Ê½Êǽ«Ö´ÐйýµÄдָÁî¼Ç¼ÏÂÀ´£¬ÔÚÊý¾Ý»Ö¸´Ê±°´ÕÕ´Óǰµ½ºóµÄ˳ÐòÔÙ½«Ö¸Áî¶¼Ö´ÐÐÒ»±é£¬¾ÍÕâô¼òµ¥¡£ ÎÒÃÇͨ¹ýÅäÖÃredis.confÖеÄappendonly yes¾Í¿ÉÒÔ´ò¿ªAOF¹¦ÄÜ¡£Èç¹ûÓÐд²Ù×÷£¨ÈçSETµÈ£©£¬redis¾Í»á±»×·¼Óµ½AOFÎļþµÄĩβ¡£ ĬÈϵÄAOF³Ö¾Ã»¯²ßÂÔÊÇÿÃëÖÓfsyncÒ»´Î£¨fsyncÊÇÖ¸°Ñ»º´æÖеÄдָÁî¼Ç¼µ½´ÅÅÌÖУ©£¬ÒòΪÔÚÕâÖÖÇé¿öÏ£¬redisÈÔÈ»¿ÉÒÔ±£³ÖºÜºÃµÄ´¦ÀíÐÔÄÜ£¬¼´Ê¹redis¹ÊÕÏ£¬Ò²Ö»»á¶ªÊ§×î½ü1ÃëÖÓµÄÊý¾Ý¡£ Èç¹ûÔÚ×·¼ÓÈÕ־ʱ£¬Ç¡ºÃÓöµ½´ÅÅ̿ռäÂú¡¢inodeÂú»ò¶ÏµçµÈÇé¿öµ¼ÖÂÈÕ־дÈë²»ÍêÕû£¬Ò²Ã»ÓйØÏµ£¬redisÌṩÁËredis-check-aof¹¤¾ß£¬¿ÉÒÔÓÃÀ´½øÐÐÈÕÖ¾ÐÞ¸´¡£ ÒòΪ²ÉÓÃÁË×·¼Ó·½Ê½£¬Èç¹û²»×öÈκδ¦ÀíµÄ»°£¬AOFÎļþ»á±äµÃÔ½À´Ô½´ó£¬Îª´Ë£¬redisÌṩÁËAOFÎļþÖØÐ´£¨rewrite£©»úÖÆ£¬¼´µ±AOFÎļþµÄ´óС³¬¹ýËùÉ趨µÄãÐֵʱ£¬redis¾Í»áÆô¶¯AOFÎļþµÄÄÚÈÝѹËõ£¬Ö»±£Áô¿ÉÒÔ»Ö¸´Êý¾ÝµÄ×îСָÁ¡£¾Ù¸öÀý×Ó»òÐí¸üÐÎÏ󣬼ÙÈçÎÒÃǵ÷ÓÃÁË100´ÎINCRÖ¸ÁÔÚAOFÎļþÖоÍÒª´æ´¢100ÌõÖ¸Áµ«ÕâÃ÷ÏÔÊǺܵÍЧµÄ£¬ÍêÈ«¿ÉÒÔ°ÑÕâ100ÌõÖ¸ÁîºÏ²¢³ÉÒ»ÌõSETÖ¸ÁÕâ¾ÍÊÇÖØÐ´»úÖÆµÄÔÀí¡£ ÔÚ½øÐÐAOFÖØÐ´Ê±£¬ÈÔÈ»ÊDzÉÓÃÏÈдÁÙʱÎļþ£¬È«²¿Íê³ÉºóÔÙÌæ»»µÄÁ÷³Ì£¬ËùÒԶϵ硢´ÅÅÌÂúµÈÎÊÌâ¶¼²»»áÓ°ÏìAOFÎļþµÄ¿ÉÓÃÐÔ£¬Õâµã´ó¼Ò¿ÉÒÔ·ÅÐÄ¡£ AOF·½Ê½µÄÁíÒ»¸öºÃ´¦£¬ÎÒÃÇͨ¹ýÒ»¸ö¡°³¡¾°ÔÙÏÖ¡±À´ËµÃ÷¡£Ä³Í¬Ñ§ÔÚ²Ù×÷redisʱ£¬²»Ð¡ÐÄÖ´ÐÐÁËFLUSHALL£¬µ¼ÖÂredisÄÚ´æÖеÄÊý¾ÝÈ«²¿±»Çå¿ÕÁË£¬ÕâÊǺܱ¯¾çµÄÊÂÇé¡£²»¹ýÕâÒ²²»ÊÇÊÀ½çÄ©ÈÕ£¬Ö»ÒªredisÅäÖÃÁËAOF³Ö¾Ã»¯·½Ê½£¬ÇÒAOFÎļþ»¹Ã»Óб»ÖØÐ´£¨rewrite£©£¬ÎÒÃǾͿÉÒÔÓÃ×î¿ìµÄËÙ¶ÈÔÝÍ£redis²¢±à¼AOFÎļþ£¬½«×îºóÒ»ÐеÄFLUSHALLÃüÁîɾ³ý£¬È»ºóÖØÆôredis£¬¾Í¿ÉÒÔ»Ö¸´redisµÄËùÓÐÊý¾Ýµ½FLUSHALL֮ǰµÄ״̬ÁË¡£ÊDz»ÊǺÜÉñÆæ£¬Õâ¾ÍÊÇAOF³Ö¾Ã»¯·½Ê½µÄºÃ´¦Ö®Ò»¡£µ«ÊÇÈç¹ûAOFÎļþÒѾ±»ÖØÐ´ÁË£¬ÄǾÍÎÞ·¨Í¨¹ýÕâÖÖ·½·¨À´»Ö¸´Êý¾ÝÁË¡£ ËäÈ»Óŵã¶à¶à£¬µ«AOF·½Ê½Ò²Í¬Ñù´æÔÚȱÏÝ£¬±ÈÈçÔÚͬÑùÊý¾Ý¹æÄ£µÄÇé¿öÏ£¬AOFÎļþÒª±ÈRDBÎļþµÄÌå»ý´ó¡£¶øÇÒ£¬AOF·½Ê½µÄ»Ö¸´ËÙ¶ÈÒ²ÒªÂýÓÚRDB·½Ê½¡£ Èç¹ûÄãÖ±½ÓÖ´ÐÐBGREWRITEAOFÃüÁÄÇôredis»áÉú³ÉÒ»¸öȫеÄAOFÎļþ£¬ÆäÖбã°üÀ¨ÁË¿ÉÒÔ»Ö¸´ÏÖÓÐÊý¾ÝµÄ×îÉÙµÄÃüÁ¡£ Èç¹ûÔËÆø±È½Ï²î£¬AOFÎļþ³öÏÖÁ˱»Ð´»µµÄÇé¿ö£¬Ò²²»±Ø¹ý·Öµ£ÓÇ£¬redis²¢²»»áóȻ¼ÓÔØÕâ¸öÓÐÎÊÌâµÄAOFÎļþ£¬¶øÊDZ¨´íÍ˳ö¡£Õâʱ¿ÉÒÔͨ¹ýÒÔϲ½ÖèÀ´ÐÞ¸´³ö´íµÄÎļþ£º 1.±¸·Ý±»Ð´»µµÄAOFÎļþ 2.ÔËÐÐredis-check-aof ¨Cfix½øÐÐÐÞ¸´ 3.ÓÃdiff -uÀ´¿´ÏÂÁ½¸öÎļþµÄ²îÒ죬ȷÈÏÎÊÌâµã 4.ÖØÆôredis£¬¼ÓÔØÐÞ¸´ºóµÄAOFÎļþ
¡¾ÁÄÁÄredis³Ö¾Ã»¯ ¨C AOFÖØÐ´¡¿
AOFÖØÐ´µÄÄÚ²¿ÔËÐÐÔÀí£¬ÎÒÃÇÓбØÒªÁ˽âһϡ£ ÔÚÖØÐ´¼´½«¿ªÊ¼Ö®¼Ê£¬redis»á´´½¨£¨fork£©Ò»¸ö¡°ÖØÐ´×Ó½ø³Ì¡±£¬Õâ¸ö×Ó½ø³Ì»áÊ×ÏȶÁÈ¡ÏÖÓеÄAOFÎļþ£¬²¢½«Æä°üº¬µÄÖ¸Áî½øÐзÖÎöѹËõ²¢Ð´Èëµ½Ò»¸öÁÙʱÎļþÖС£ Óë´Ëͬʱ£¬Ö÷¹¤×÷½ø³Ì»á½«Ð½ÓÊÕµ½µÄдָÁîÒ»±ßÀÛ»ýµ½Äڴ滺³åÇøÖУ¬Ò»±ß¼ÌÐøÐ´Èëµ½ÔÓеÄAOFÎļþÖУ¬ÕâÑù×öÊDZ£Ö¤ÔÓеÄAOFÎļþµÄ¿ÉÓÃÐÔ£¬±ÜÃâÔÚÖØÐ´¹ý³ÌÖгöÏÖÒâÍâ¡£ µ±¡°ÖØÐ´×Ó½ø³Ì¡±Íê³ÉÖØÐ´¹¤×÷ºó£¬Ëü»á¸ø¸¸½ø³Ì·¢Ò»¸öÐźţ¬¸¸½ø³ÌÊÕµ½Ðźźó¾Í»á½«ÄÚ´æÖлº´æµÄдָÁî×·¼Óµ½ÐÂAOFÎļþÖС£ µ±×·¼Ó½áÊøºó£¬redis¾Í»áÓÃÐÂAOFÎļþÀ´´úÌæ¾ÉAOFÎļþ£¬Ö®ºóÔÙÓÐеÄдָÁ¾Í¶¼»á×·¼Óµ½ÐµÄAOFÎļþÖÐÁË¡£
¡¾ÁÄÁÄredis³Ö¾Ã»¯ ¨C ÈçºÎÑ¡ÔñRDBºÍAOF¡¿
¶ÔÓÚÎÒÃÇÓ¦¸ÃÑ¡ÔñRDB»¹ÊÇAOF£¬¹Ù·½µÄ½¨ÒéÊÇÁ½¸öͬʱʹÓá£ÕâÑù¿ÉÒÔÌṩ¸ü¿É¿¿µÄ³Ö¾Ã»¯·½°¸¡£
¡¾ÁÄÁÄÖ÷´Ó ¨C Ó÷¨¡¿
ÏñMySQLÒ»Ñù£¬redisÊÇÖ§³ÖÖ÷´Óͬ²½µÄ£¬¶øÇÒÒ²Ö§³ÖÒ»Ö÷¶à´ÓÒÔ¼°¶à¼¶´Ó½á¹¹¡£ Ö÷´Ó½á¹¹£¬Ò»ÊÇΪÁË´¿´âµÄÈßÓ౸·Ý£¬¶þÊÇΪÁËÌáÉý¶ÁÐÔÄÜ£¬±ÈÈçºÜÏûºÄÐÔÄܵÄSORT¾Í¿ÉÒÔÓÉ´Ó·þÎñÆ÷À´³Ðµ£¡£ redisµÄÖ÷´Óͬ²½ÊÇÒì²½½øÐеģ¬ÕâÒâζ×ÅÖ÷´Óͬ²½²»»áÓ°ÏìÖ÷Âß¼£¬Ò²²»»á½µµÍredisµÄ´¦ÀíÐÔÄÜ¡£ Ö÷´Ó¼Ü¹¹ÖУ¬¿ÉÒÔ¿¼ÂǹرÕÖ÷·þÎñÆ÷µÄÊý¾Ý³Ö¾Ã»¯¹¦ÄÜ£¬Ö»ÈôӷþÎñÆ÷½øÐг־û¯£¬ÕâÑù¿ÉÒÔÌá¸ßÖ÷·þÎñÆ÷µÄ´¦ÀíÐÔÄÜ¡£ ÔÚÖ÷´Ó¼Ü¹¹ÖУ¬´Ó·þÎñÆ÷ͨ³£±»ÉèÖÃΪֻ¶Áģʽ£¬ÕâÑù¿ÉÒÔ±ÜÃâ´Ó·þÎñÆ÷µÄÊý¾Ý±»ÎóÐ޸ġ£µ«ÊÇ´Ó·þÎñÆ÷ÈÔÈ»¿ÉÒÔ½ÓÊÜCONFIGµÈÖ¸ÁËùÒÔ»¹ÊDz»Ó¦¸Ã½«´Ó·þÎñÆ÷Ö±½Ó±©Â¶µ½²»°²È«µÄÍøÂç»·¾³ÖС£Èç¹û±ØÐëÈç´Ë£¬ÄÇ¿ÉÒÔ¿¼ÂǸøÖØÒªÖ¸Áî½øÐÐÖØÃüÃû£¬À´±ÜÃâÃüÁî±»ÍâÈËÎóÖ´ÐС£
¡¾ÁÄÁÄÖ÷´Ó ¨C ͬ²½ÔÀí¡¿
´Ó·þÎñÆ÷»áÏòÖ÷·þÎñÆ÷·¢³öSYNCÖ¸Áµ±Ö÷·þÎñÆ÷½Óµ½´ËÃüÁîºó£¬¾Í»áµ÷ÓÃBGSAVEÖ¸ÁîÀ´´´½¨Ò»¸ö×Ó½ø³ÌרÃŽøÐÐÊý¾Ý³Ö¾Ã»¯¹¤×÷£¬Ò²¾ÍÊǽ«Ö÷·þÎñÆ÷µÄÊý¾ÝдÈëRDBÎļþÖС£ÔÚÊý¾Ý³Ö¾Ã»¯ÆÚ¼ä£¬Ö÷·þÎñÆ÷½«Ö´ÐеÄдָÁî¶¼»º´æÔÚÄÚ´æÖС£ ÔÚBGSAVEÖ¸ÁîÖ´ÐÐÍê³Éºó£¬Ö÷·þÎñÆ÷»á½«³Ö¾Ã»¯ºÃµÄRDBÎļþ·¢Ë͸ø´Ó·þÎñÆ÷£¬´Ó·þÎñÆ÷½Óµ½´ËÎļþºó»á½«Æä´æ´¢µ½´ÅÅÌÉÏ£¬È»ºóÔÙ½«Æä¶ÁÈ¡µ½ÄÚ´æÖС£Õâ¸ö¶¯×÷Íê³Éºó£¬Ö÷·þÎñÆ÷»á½«Õâ¶Îʱ¼ä»º´æµÄдָÁîÔÙÒÔredisÐÒéµÄ¸ñʽ·¢Ë͸ø´Ó·þÎñÆ÷¡£ ÁíÍ⣬Ҫ˵µÄÒ»µãÊÇ£¬¼´Ê¹Óжà¸ö´Ó·þÎñÆ÷ͬʱ·¢À´SYNCÖ¸ÁÖ÷·þÎñÆ÷Ò²Ö»»áÖ´ÐÐÒ»´ÎBGSAVE£¬È»ºó°Ñ³Ö¾Ã»¯ºÃµÄRDBÎļþ·¢¸ø¶à¸öÏÂÓΡ£ÔÚredis2.8°æ±¾Ö®Ç°£¬Èç¹û´Ó·þÎñÆ÷ÓëÖ÷·þÎñÆ÷ÒòijЩÔÒò¶Ï¿ªÁ¬½ÓµÄ»°£¬¶¼»á½øÐÐÒ»´ÎÖ÷´ÓÖ®¼äµÄÈ«Á¿µÄÊý¾Ýͬ²½£»¶øÔÚ2.8°æ±¾Ö®ºó£¬redisÖ§³ÖÁËЧÂʸü¸ßµÄÔöÁ¿Í¬²½²ßÂÔ£¬Õâ´ó´ó½µµÍÁËÁ¬½Ó¶Ï¿ªµÄ»Ö¸´³É±¾¡£ Ö÷·þÎñÆ÷»áÔÚÄÚ´æÖÐά»¤Ò»¸ö»º³åÇø£¬»º³åÇøÖд洢׎«Òª·¢¸ø´Ó·þÎñÆ÷µÄÄÚÈÝ¡£´Ó·þÎñÆ÷ÔÚÓëÖ÷·þÎñÆ÷³öÏÖÍøÂç˲¶ÏÖ®ºó£¬´Ó·þÎñÆ÷»á³¢ÊÔÔÙ´ÎÓëÖ÷·þÎñÆ÷Á¬½Ó£¬Ò»µ©Á¬½Ó³É¹¦£¬´Ó·þÎñÆ÷¾Í»á°Ñ¡°Ï£Íûͬ²½µÄÖ÷·þÎñÆ÷ID¡±ºÍ¡°Ï£ÍûÇëÇóµÄÊý¾ÝµÄÆ«ÒÆÎ»Öã¨replication
offset£©¡±·¢ËͳöÈ¥¡£Ö÷·þÎñÆ÷½ÓÊÕµ½ÕâÑùµÄͬ²½ÇëÇóºó£¬Ê×ÏÈ»áÑéÖ¤Ö÷·þÎñÆ÷IDÊÇ·ñºÍ×Ô¼ºµÄIDÆ¥Å䣬Æä´Î»á¼ì²é¡°ÇëÇóµÄÆ«ÒÆÎ»Öá±ÊÇ·ñ´æÔÚÓÚ×Ô¼ºµÄ»º³åÇøÖУ¬Èç¹ûÁ½Õß¶¼Âú×ãµÄ»°£¬Ö÷·þÎñÆ÷¾Í»áÏò´Ó·þÎñÆ÷·¢ËÍÔöÁ¿ÄÚÈÝ¡£ ÔöÁ¿Í¬²½¹¦ÄÜ£¬ÐèÒª·þÎñÆ÷¶ËÖ§³ÖȫеÄPSYNCÖ¸Áî¡£Õâ¸öÖ¸ÁֻÓÐÔÚredis-2.8Ö®ºó²Å¾ßÓС£
¡¾ÁÄÁÄredisµÄÊÂÎñ´¦Àí¡¿
ÖÚËùÖÜÖª£¬ÊÂÎñÊÇÖ¸¡°Ò»¸öÍêÕûµÄ¶¯×÷£¬ÒªÃ´È«²¿Ö´ÐУ¬ÒªÃ´Ê²Ã´Ò²Ã»ÓÐ×ö¡±¡£ ÔÚÁÄredisÊÂÎñ´¦Àí֮ǰ£¬ÒªÏȺʹó¼Ò½éÉÜËĸöredisÖ¸Á¼´MULTI¡¢EXEC¡¢DISCARD¡¢WATCH¡£ÕâËĸöÖ¸Áî¹¹³ÉÁËredisÊÂÎñ´¦ÀíµÄ»ù´¡¡£ 1.MULTIÓÃÀ´×é×°Ò»¸öÊÂÎñ£» 2.EXECÓÃÀ´Ö´ÐÐÒ»¸öÊÂÎñ£» 3.DISCARDÓÃÀ´È¡ÏûÒ»¸öÊÂÎñ£» 4.WATCHÓÃÀ´¼àÊÓһЩkey£¬Ò»µ©ÕâЩkeyÔÚÊÂÎñÖ´ÐÐ֮ǰ±»¸Ä±ä£¬ÔòÈ¡ÏûÊÂÎñµÄÖ´ÐС£ Ö½ÉϵÃÀ´ÖÕ¾õdz£¬ÎÒÃÇÀ´¿´Ò»¸öMULTIºÍEXECµÄÀý×Ó£º
redis>
MULTI //±ê¼ÇÊÂÎñ¿ªÊ¼
OK
redis> INCR user_id //¶àÌõÃüÁ˳ÐòÈë¶Ó
QUEUED
redis> INCR user_id
QUEUED
redis> INCR user_id
QUEUED
redis> PING
QUEUED
redis> EXEC //Ö´ÐÐ
1) (integer) 1
2) (integer) 2
3) (integer) 3
4) PONG |
ÔÚÉÏÃæµÄÀý×ÓÖУ¬ÎÒÃÇ¿´µ½ÁËQUEUEDµÄ×ÖÑù£¬Õâ±íʾÎÒÃÇÔÚÓÃMULTI×é×°ÊÂÎñʱ£¬Ã¿Ò»¸öÃüÁî¶¼»á½øÈëµ½ÄÚ´æ¶ÓÁÐÖлº´æÆðÀ´£¬Èç¹û³öÏÖQUEUEDÔò±íʾÎÒÃÇÕâ¸öÃüÁî³É¹¦²åÈëÁË»º´æ¶ÓÁУ¬ÔÚ½«À´Ö´ÐÐEXECʱ£¬ÕâЩ±»QUEUEDµÄÃüÁî¶¼»á±»×é×°³ÉÒ»¸öÊÂÎñÀ´Ö´ÐС£ ¶ÔÓÚÊÂÎñµÄÖ´ÐÐÀ´Ëµ£¬Èç¹ûredis¿ªÆôÁËAOF³Ö¾Ã»¯µÄ»°£¬ÄÇôһµ©ÊÂÎñ±»³É¹¦Ö´ÐУ¬ÊÂÎñÖеÄÃüÁî¾Í»áͨ¹ýwriteÃüÁîÒ»´ÎÐÔдµ½´ÅÅÌÖÐÈ¥£¬Èç¹ûÔÚÏò´ÅÅÌÖÐдµÄ¹ý³ÌÖÐÇ¡ºÃ³öÏֶϵ硢Ӳ¼þ¹ÊÕϵÈÎÊÌ⣬ÄÇô¾Í¿ÉÄܳöÏÖÖ»Óв¿·ÖÃüÁî½øÐÐÁËAOF³Ö¾Ã»¯£¬ÕâʱAOFÎļþ¾Í»á³öÏÖ²»ÍêÕûµÄÇé¿ö£¬Õâʱ£¬ÎÒÃÇ¿ÉÒÔʹÓÃredis-check-aof¹¤¾ßÀ´ÐÞ¸´ÕâÒ»ÎÊÌ⣬Õâ¸ö¹¤¾ß»á½«AOFÎļþÖв»ÍêÕûµÄÐÅÏ¢ÒÆ³ý£¬È·±£AOFÎļþÍêÕû¿ÉÓᣠÓйØÊÂÎñ£¬´ó¼Ò¾³£»áÓöµ½µÄÊÇÁ½Àà´íÎó£º 1.µ÷ÓÃEXEC֮ǰµÄ´íÎó 2.µ÷ÓÃEXECÖ®ºóµÄ´íÎó ¡°µ÷ÓÃEXEC֮ǰµÄ´íÎó¡±£¬ÓпÉÄÜÊÇÓÉÓÚÓï·¨ÓÐÎóµ¼Öµģ¬Ò²¿ÉÄÜʱÓÉÓÚÄÚ´æ²»×ãµ¼Öµġ£Ö»Òª³öÏÖij¸öÃüÁîÎÞ·¨³É¹¦Ð´È뻺³å¶ÓÁеÄÇé¿ö£¬redis¶¼»á½øÐмǼ£¬ÔÚ¿Í»§¶Ëµ÷ÓÃEXECʱ£¬redis»á¾Ü¾øÖ´ÐÐÕâÒ»ÊÂÎñ¡££¨Õâʱ2.6.5°æ±¾Ö®ºóµÄ²ßÂÔ¡£ÔÚ2.6.5֮ǰµÄ°æ±¾ÖУ¬redis»áºöÂÔÄÇЩÈë¶Óʧ°ÜµÄÃüÁִֻÐÐÄÇЩÈë¶Ó³É¹¦µÄÃüÁ¡£ÎÒÃÇÀ´¿´Ò»¸öÕâÑùµÄÀý×Ó£º
127.0.0.1:6379>
multi
OK
127.0.0.1:6379> haha //Ò»¸öÃ÷ÏÔ´íÎóµÄÖ¸Áî
(error) ERR unknown command 'haha'
127.0.0.1:6379> ping
QUEUED
127.0.0.1:6379> exec
//redisÎÞÇéµÄ¾Ü¾øÁËÊÂÎñµÄÖ´ÐУ¬ÔÒòÊÇ¡°Ö®Ç°³öÏÖÁË´íÎó¡±
(error) EXECABORT Transaction discarded because
of previous errors. |
¶ø¶ÔÓÚ¡°µ÷ÓÃEXECÖ®ºóµÄ´íÎó¡±£¬redisÔò²ÉÈ¡ÁËÍêÈ«²»Í¬µÄ²ßÂÔ£¬¼´redis²»»áÀí²ÇÕâЩ´íÎ󣬶øÊǼÌÐøÏòÏÂÖ´ÐÐÊÂÎñÖÐµÄÆäËûÃüÁî¡£ÕâÊÇÒòΪ£¬¶ÔÓÚÓ¦ÓòãÃæµÄ´íÎ󣬲¢²»ÊÇredis×ÔÉíÐèÒª¿¼ÂǺʹ¦ÀíµÄÎÊÌ⣬ËùÒÔÒ»¸öÊÂÎñÖÐÈç¹ûijһÌõÃüÁîÖ´ÐÐʧ°Ü£¬²¢²»»áÓ°Ïì½ÓÏÂÀ´µÄÆäËûÃüÁîµÄÖ´ÐС£ÎÒÃÇÒ²À´¿´Ò»¸öÀý×Ó£º
127.0.0.1:6379>
multi
OK
127.0.0.1:6379> set age 23
QUEUED
//age²»ÊǼ¯ºÏ£¬ËùÒÔÈçÏÂÊÇÒ»ÌõÃ÷ÏÔ´íÎóµÄÖ¸Áî
127.0.0.1:6379> sadd age 15
QUEUED
127.0.0.1:6379> set age 29
QUEUED
127.0.0.1:6379> exec //Ö´ÐÐÊÂÎñʱ£¬redis²»»áÀí²ÇµÚ2ÌõÖ¸ÁîÖ´ÐдíÎó
1) OK
2) (error) WRONGTYPE Operation against a key
holding the wrong kind of value
3) OK
127.0.0.1:6379> get age
"29" //¿ÉÒÔ¿´³öµÚ3ÌõÖ¸Áî±»³É¹¦Ö´ÐÐÁË |
ºÃÁË£¬ÎÒÃÇÀ´ËµËµ×îºóÒ»¸öÖ¸Áî¡°WATCH¡±£¬ÕâÊÇÒ»¸öºÜºÃÓõÄÖ¸ÁËü¿ÉÒÔ°ïÎÒÃÇʵÏÖÀàËÆÓÚ¡°ÀÖ¹ÛËø¡±µÄЧ¹û£¬¼´CAS£¨check
and set£©¡£ WATCH±¾ÉíµÄ×÷ÓÃÊÇ¡°¼àÊÓkeyÊÇ·ñ±»¸Ä¶¯¹ý¡±£¬¶øÇÒÖ§³Öͬʱ¼àÊÓ¶à¸ökey£¬Ö»Òª»¹Ã»ÕæÕý´¥·¢ÊÂÎñ£¬WATCH¶¼»á¾¡Ö°¾¡ÔðµÄ¼àÊÓ£¬Ò»µ©·¢ÏÖij¸ökey±»ÐÞ¸ÄÁË£¬ÔÚÖ´ÐÐEXECʱ¾Í»á·µ»Ønil£¬±íʾÊÂÎñÎÞ·¨´¥·¢¡£
127.0.0.1:6379>
set age 23
OK
127.0.0.1:6379> watch age //¿ªÊ¼¼àÊÓage
OK
127.0.0.1:6379> set age 24 //ÔÚEXEC֮ǰ£¬ageµÄÖµ±»ÐÞ¸ÄÁË
OK
127.0.0.1:6379> multi
OK
127.0.0.1:6379> set age 25
QUEUED
127.0.0.1:6379> get age
QUEUED
127.0.0.1:6379> exec //´¥·¢EXEC
(nil) //ÊÂÎñÎÞ·¨±»Ö´ÐÐ |
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ¼ò½é¡¿
ÎÒÃÇ¿ÉÒÔÔÚÆô¶¯redis-serverʱָ¶¨Ó¦¸Ã¼ÓÔØµÄÅäÖÃÎļþ£¬·½·¨ÈçÏ£º
$
./redis-server /path/to/redis.conf |
½ÓÏÂÀ´£¬ÎÒÃǾÍÀ´½²½âÏÂredisÅäÖÃÎļþµÄ¸÷¸öÅäÖÃÏîµÄº¬Ò壬עÒ⣬±¾ÎÄÊÇ»ùÓÚredis-2.8.4°æ±¾½øÐн²½âµÄ¡£ redis¹Ù·½ÌṩµÄredis.confÎļþ£¬×ãÓÐ700+ÐУ¬ÆäÖÐ100¶àÐÐΪÓÐЧÅäÖÃÐУ¬ÁíÍâµÄ600¶àÐÐΪעÊÍ˵Ã÷¡£ ÔÚÅäÖÃÎļþµÄ¿ªÍ·²¿·Ö£¬Ê×ÏÈÃ÷È·ÁËһЩ¶ÈÁ¿µ¥Î»£º
#
1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes |
¿ÉÒÔ¿´³ö£¬redisÅäÖÃÖжԵ¥Î»µÄ´óСд²»Ãô¸Ð£¬1GB¡¢1GbºÍ1gB¶¼ÊÇÏàͬµÄ¡£ÓÉ´ËҲ˵Ã÷£¬redisÖ»Ö§³Öbytes£¬²»Ö§³Öbitµ¥Î»¡£ redisÖ§³Ö¡°Ö÷ÅäÖÃÎļþÖÐÒýÈëÍⲿÅäÖÃÎļþ¡±£¬ºÜÏñC/C++ÖеÄincludeÖ¸Á±ÈÈ磺
Èç¹ûÄã¿´¹ýredisµÄÅäÖÃÎļþ£¬»á·¢ÏÖ»¹ÊǺÜÓÐÌõÀíµÄ¡£redisÅäÖÃÎļþ±»·Ö³ÉÁ˼¸´ó¿éÇøÓò£¬ËüÃÇ·Ö±ðÊÇ£º 1.ͨÓã¨general£© 2.¿ìÕÕ£¨snapshotting£© 3.¸´ÖÆ£¨replication£© 4.°²È«£¨security£© 5.ÏÞÖÆ£¨limits) 6.×·¼Óģʽ£¨append only mode) 7.LUA½Å±¾£¨lua scripting) 8.ÂýÈÕÖ¾£¨slow log) 9.ʼþ֪ͨ£¨event notification£© ÏÂÃæÎÒÃǾÍÀ´ÖðÒ»½²½â¡£
¡¾½ÌÄã¿´¶®redisÅäÖà -ͨÓá¿
ĬÈÏÇé¿öÏ£¬redis²¢²»ÊÇÒÔdaemonÐÎʽÀ´ÔËÐеġ£Í¨¹ýdaemonizeÅäÖÃÏî¿ÉÒÔ¿ØÖÆredisµÄÔËÐÐÐÎʽ£¬Èç¹û¸ÄΪyes£¬ÄÇôredis¾Í»áÒÔdaemonÐÎʽÔËÐУº
µ±ÒÔdaemonÐÎʽÔËÐÐʱ£¬redis»áÉú³ÉÒ»¸öpidÎļþ£¬Ä¬ÈÏ»áÉú³ÉÔÚ/var/run/redis.pid¡£µ±È»£¬Äã¿ÉÒÔͨ¹ýpidfileÀ´Ö¸¶¨pidÎļþÉú³ÉµÄλÖ㬱ÈÈ磺
pidfile
/path/to/redis.pid |
ĬÈÏÇé¿öÏ£¬redis»áÏìÓ¦±¾»úËùÓпÉÓÃÍø¿¨µÄÁ¬½ÓÇëÇó¡£µ±È»£¬redisÔÊÐíÄãͨ¹ýbindÅäÖÃÏîÀ´Ö¸¶¨Òª°ó¶¨µÄIP£¬±ÈÈ磺
bind
192.168.1.2 10.8.4.2 |
redisµÄĬÈÏ·þÎñ¶Ë¿ÚÊÇ6379£¬Äã¿ÉÒÔͨ¹ýportÅäÖÃÏîÀ´Ð޸ġ£Èç¹û¶Ë¿ÚÉèÖÃΪ0µÄ»°£¬redis±ã²»»á¼àÌý¶Ë¿ÚÁË
ÓÐЩͬѧ»áÎÊ¡°Èç¹ûredis²»¼àÌý¶Ë¿Ú£¬»¹ÔõôÓëÍâ½çͨÐÅÄØ¡±£¬Æäʵredis»¹Ö§³Öͨ¹ýunix socket·½Ê½À´½ÓÊÕÇëÇ󡣿ÉÒÔͨ¹ýunixsocketÅäÖÃÏîÀ´Ö¸¶¨unix
socketÎļþµÄ·¾¶£¬²¢Í¨¹ýunixsocketpermÀ´Ö¸¶¨ÎļþµÄȨÏÞ¡£
unixsocket
/tmp/redis.sock
unixsocketperm 755 |
µ±Ò»¸öredis-clientһֱûÓÐÇëÇó·¢Ïòserver¶Ë£¬ÄÇôserver¶ËÓÐȨÖ÷¶¯¹Ø±ÕÕâ¸öÁ¬½Ó£¬¿ÉÒÔͨ¹ýtimeoutÀ´ÉèÖá°¿ÕÏг¬Ê±Ê±ÏÞ¡±£¬0±íʾÓÀ²»¹Ø±Õ¡£
TCPÁ¬½Ó±£»î²ßÂÔ£¬¿ÉÒÔͨ¹ýtcp-keepaliveÅäÖÃÏîÀ´½øÐÐÉèÖ㬵¥Î»ÎªÃ룬¼ÙÈçÉèÖÃΪ60Ã룬Ôòserver¶Ë»áÿ60ÃëÏòÁ¬½Ó¿ÕÏеĿͻ§¶Ë·¢ÆðÒ»´ÎACKÇëÇó£¬ÒÔ¼ì²é¿Í»§¶ËÊÇ·ñÒѾ¹Òµô£¬¶ÔÓÚÎÞÏìÓ¦µÄ¿Í»§¶ËÔò»á¹Ø±ÕÆäÁ¬½Ó¡£ËùÒԹرÕÒ»¸öÁ¬½Ó×ÐèÒª120ÃëµÄʱ¼ä¡£Èç¹ûÉèÖÃΪ0£¬Ôò²»»á½øÐб£»î¼ì²â¡£
redisÖ§³Öͨ¹ýloglevelÅäÖÃÏîÉèÖÃÈÕÖ¾µÈ¼¶£¬¹²·ÖËļ¶£¬¼´
debug ¡¢ verbose ¡¢ notice ¡¢ warning ¡£
redisÒ²Ö§³Öͨ¹ýlogfileÅäÖÃÏîÀ´ÉèÖÃÈÕÖ¾ÎļþµÄÉú³ÉλÖá£Èç¹ûÉèÖÃΪ¿Õ×Ö·û´®£¬Ôòredis»á½«ÈÕÖ¾Êä³öµ½±ê×¼Êä³ö¡£¼ÙÈçÄãÔÚdaemonÇé¿öϽ«ÈÕÖ¾ÉèÖÃΪÊä³öµ½±ê×¼Êä³ö£¬ÔòÈÕÖ¾»á±»Ð´µ½/dev/nullÖС£
Èç¹ûÏ£ÍûÈÕÖ¾´òÓ¡µ½syslogÖУ¬Ò²ºÜÈÝÒ×£¬Í¨¹ýsyslog-enabledÀ´¿ØÖÆ¡£ÁíÍ⣬syslog-ident»¹¿ÉÒÔÈÃÄãÖ¸¶¨syslogÀïµÄÈÕÖ¾±êÖ¾£¬±ÈÈ磺
¶øÇÒ»¹Ö§³ÖÖ¸¶¨syslogÉ豸£¬Öµ¿ÉÒÔÊÇUSER»òLOCAL0-LOCAL7¡£¾ßÌå¿ÉÒԲο¼syslog·þÎñ±¾ÉíµÄÓ÷¨¡£
¶ÔÓÚredisÀ´Ëµ£¬¿ÉÒÔÉèÖÃÆäÊý¾Ý¿âµÄ×ÜÊýÁ¿£¬¼ÙÈçÄãÏ£ÍûÒ»¸öredis°üº¬16¸öÊý¾Ý¿â£¬ÄÇôÉèÖÃÈçÏ£º
Õâ16¸öÊý¾Ý¿âµÄ±àºÅ½«ÊÇ0µ½15¡£Ä¬ÈϵÄÊý¾Ý¿âÊDZàºÅΪ0µÄÊý¾Ý¿â¡£Óû§¿ÉÒÔʹÓÃselect <DBid>À´Ñ¡ÔñÏàÓ¦µÄÊý¾Ý¿â¡£
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ¿ìÕÕ¡¿
¿ìÕÕ£¬Ö÷񻃾¼°µÄÊÇredisµÄRDB³Ö¾Ã»¯Ïà¹ØµÄÅäÖã¬ÎÒÃÇÀ´Ò»Æð¿´Ò»¿´¡£ ÎÒÃÇ¿ÉÒÔÓÃÈçϵÄÖ¸ÁîÀ´ÈÃÊý¾Ý±£´æµ½´ÅÅÌÉÏ£¬¼´¿ØÖÆRDB¿ìÕÕ¹¦ÄÜ£º
¾ÙÀýÀ´Ëµ£º
save
900 1 //±íʾÿ15·ÖÖÓÇÒÖÁÉÙÓÐ1¸ökey¸Ä±ä£¬¾Í´¥·¢Ò»´Î³Ö¾Ã»¯
save 300 10 //±íʾÿ5·ÖÖÓÇÒÖÁÉÙÓÐ10¸ökey¸Ä±ä£¬¾Í´¥·¢Ò»´Î³Ö¾Ã»¯
save 60 10000 //±íʾÿ60ÃëÖÁÉÙÓÐ10000¸ökey¸Ä±ä£¬¾Í´¥·¢Ò»´Î³Ö¾Ã»¯ |
Èç¹ûÄãÏë½ûÓÃRDB³Ö¾Ã»¯µÄ²ßÂÔ£¬Ö»Òª²»ÉèÖÃÈκÎsaveÖ¸Áî¾Í¿ÉÒÔ£¬»òÕ߸øsave´«ÈëÒ»¸ö¿Õ×Ö·û´®²ÎÊýÒ²¿ÉÒÔ´ïµ½ÏàͬЧ¹û£¬¾ÍÏñÕâÑù£º
Èç¹ûÓû§¿ªÆôÁËRDB¿ìÕÕ¹¦ÄÜ£¬ÄÇôÔÚredis³Ö¾Ã»¯Êý¾Ýµ½´ÅÅÌʱÈç¹û³öÏÖʧ°Ü£¬Ä¬ÈÏÇé¿öÏ£¬redis»áÍ£Ö¹½ÓÊÜËùÓеÄдÇëÇó¡£ÕâÑù×öµÄºÃ´¦ÔÚÓÚ¿ÉÒÔÈÃÓû§ºÜÃ÷È·µÄÖªµÀÄÚ´æÖеÄÊý¾ÝºÍ´ÅÅÌÉϵÄÊý¾ÝÒѾ´æÔÚ²»Ò»ÖÂÁË¡£Èç¹ûredis²»¹ËÕâÖÖ²»Ò»Ö£¬Ò»Òâ¹ÂÐеļÌÐø½ÓÊÕдÇëÇ󣬾ͿÉÄÜ»áÒýÆðһЩÔÖÄÑÐԵĺó¹û¡£ Èç¹ûÏÂÒ»´ÎRDB³Ö¾Ã»¯³É¹¦£¬redis»á×Ô¶¯»Ö¸´½ÓÊÜдÇëÇó¡£ µ±È»£¬Èç¹ûÄã²»ÔÚºõÕâÖÖÊý¾Ý²»Ò»Ö»òÕßÓÐÆäËûµÄÊֶη¢ÏֺͿØÖÆÕâÖÖ²»Ò»ÖµĻ°£¬ÄãÍêÈ«¿ÉÒԹرÕÕâ¸ö¹¦ÄÜ£¬ÒÔ±ãÔÚ¿ìÕÕдÈëʧ°Üʱ£¬Ò²ÄÜÈ·±£redis¼ÌÐø½ÓÊÜеÄдÇëÇó¡£ÅäÖÃÏîÈçÏ£º
stop-writes-on-bgsave-error
yes |
¶ÔÓÚ´æ´¢µ½´ÅÅÌÖеĿìÕÕ£¬¿ÉÒÔÉèÖÃÊÇ·ñ½øÐÐѹËõ´æ´¢¡£Èç¹ûÊǵϰ£¬redis»á²ÉÓÃLZFËã·¨½øÐÐѹËõ¡£Èç¹ûÄã²»ÏëÏûºÄCPUÀ´½øÐÐѹËõµÄ»°£¬¿ÉÒÔÉèÖÃΪ¹Ø±Õ´Ë¹¦ÄÜ£¬µ«ÊÇ´æ´¢ÔÚ´ÅÅÌÉϵĿìÕÕ»á±È½Ï´ó¡£
ÔÚ´æ´¢¿ìÕÕºó£¬ÎÒÃÇ»¹¿ÉÒÔÈÃredisʹÓÃCRC64Ëã·¨À´½øÐÐÊý¾ÝУÑ飬µ«ÊÇÕâÑù×ö»áÔö¼Ó´óÔ¼10%µÄÐÔÄÜÏûºÄ£¬Èç¹ûÄãÏ£Íû»ñÈ¡µ½×î´óµÄÐÔÄÜÌáÉý£¬¿ÉÒԹرմ˹¦ÄÜ¡£
ÎÒÃÇ»¹¿ÉÒÔÉèÖÿìÕÕÎļþµÄÃû³Æ£¬Ä¬ÈÏÊÇÕâÑùÅäÖõģº
×îºó£¬Ä㻹¿ÉÒÔÉèÖÃÕâ¸ö¿ìÕÕÎļþ´æ·ÅµÄ·¾¶¡£±ÈÈçĬÈÏÉèÖþÍÊǵ±Ç°Îļþ¼Ð£º
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ¸´ÖÆ¡¿
redisÌṩÁËÖ÷´Óͬ²½¹¦ÄÜ¡£ ͨ¹ýslaveofÅäÖÃÏî¿ÉÒÔ¿ØÖÆÄ³Ò»¸öredis×÷ΪÁíÒ»¸öredisµÄ´Ó·þÎñÆ÷£¬Í¨¹ýÖ¸¶¨IPºÍ¶Ë¿ÚÀ´¶¨Î»µ½Ö÷redisµÄλÖá£Ò»°ãÇé¿öÏ£¬ÎÒÃǻὨÒéÓû§Îª´ÓredisÉèÖÃÒ»¸ö²»Í¬ÆµÂʵĿìÕճ־û¯µÄÖÜÆÚ£¬»òÕßΪ´ÓredisÅäÖÃÒ»¸ö²»Í¬µÄ·þÎñ¶Ë¿ÚµÈµÈ¡£
slaveof
<masterip> <masterport> |
Èç¹ûÖ÷redisÉèÖÃÁËÑéÖ¤ÃÜÂëµÄ»°£¨Ê¹ÓÃrequirepassÀ´ÉèÖã©£¬ÔòÔÚ´ÓredisµÄÅäÖÃÖÐҪʹÓÃmasterauthÀ´ÉèÖÃУÑéÃÜÂ룬·ñÔòµÄ»°£¬Ö÷redis»á¾Ü¾ø´ÓredisµÄ·ÃÎÊÇëÇó¡£
masterauth
<master-password> |
µ±´ÓredisʧȥÁËÓëÖ÷redisµÄÁ¬½Ó£¬»òÕßÖ÷´Óͬ²½ÕýÔÚ½øÐÐÖÐʱ£¬redis¸ÃÈçºÎ´¦ÀíÍⲿ·¢À´µÄ·ÃÎÊÇëÇóÄØ£¿ÕâÀ´Óredis¿ÉÒÔÓÐÁ½ÖÖÑ¡Ôñ£º µÚÒ»ÖÖÑ¡Ôñ£ºÈç¹ûslave-serve-stale-dataÉèÖÃΪyes£¨Ä¬ÈÏ£©£¬Ôò´ÓredisÈÔ»á¼ÌÐøÏìÓ¦¿Í»§¶ËµÄ¶ÁдÇëÇó¡£ µÚ¶þÖÖÑ¡Ôñ£ºÈç¹ûslave-serve-stale-dataÉèÖÃΪno£¬Ôò´Óredis»á¶Ô¿Í»§¶ËµÄÇëÇ󷵻ء°SYNC
with master in progress¡±£¬µ±È»Ò²ÓÐÀýÍ⣬µ±¿Í»§¶Ë·¢À´INFOÇëÇóºÍSLAVEOFÇëÇ󣬴Óredis»¹ÊÇ»á½øÐд¦Àí¡£ Äã¿ÉÒÔ¿ØÖÆÒ»¸ö´ÓredisÊÇ·ñ¿ÉÒÔ½ÓÊÜдÇëÇó¡£½«Êý¾ÝÖ±½ÓдÈë´Óredis£¬Ò»°ãÖ»ÊÊÓÃÓÚÄÇЩÉúÃüÖÜÆÚ·Ç³£¶ÌµÄÊý¾Ý£¬ÒòΪÔÚÖ÷´Óͬ²½Ê±£¬ÕâЩÁÙʱÊý¾Ý¾Í»á±»ÇåÀíµô¡£×Ô´Óredis2.6°æ±¾Ö®ºó£¬Ä¬ÈÏ´ÓredisΪֻ¶Á¡£
Ö»¶ÁµÄ´Óredis²¢²»ÊʺÏÖ±½Ó±©Â¶¸ø²»¿ÉÐŵĿͻ§¶Ë¡£ÎªÁ˾¡Á¿½µµÍ·çÏÕ£¬¿ÉÒÔʹÓÃrename-commandÖ¸ÁîÀ´½«Ò»Ð©¿ÉÄÜÓÐÆÆ»µÁ¦µÄÃüÁîÖØÃüÃû£¬±ÜÃâÍⲿֱ½Óµ÷ÓᣱÈÈ磺
rename-command
CONFIG b840fc02d524045429941cc15f59e41cb7be6c52 |
´Óredis»áÖÜÆÚÐÔµÄÏòÖ÷redis·¢³öPING°ü¡£Äã¿ÉÒÔͨ¹ýrepl_ping_slave_periodÖ¸ÁîÀ´¿ØÖÆÆäÖÜÆÚ¡£Ä¬ÈÏÊÇ10Ãë¡£
repl-ping-slave-period
10 |
ÔÚÖ÷´Óͬ²½Ê±£¬¿ÉÄÜÔÚÕâЩÇé¿öÏ»áÓг¬Ê±·¢Éú£º 1.ÒÔ´ÓredisµÄ½Ç¶ÈÀ´¿´£¬µ±Óдó¹æÄ£IO´«Êäʱ¡£ 2.ÒÔ´ÓredisµÄ½Ç¶ÈÀ´¿´£¬µ±Êý¾Ý´«Êä»òPINGʱ£¬Ö÷redis³¬Ê± 3.ÒÔÖ÷redisµÄ½Ç¶ÈÀ´¿´£¬Ôڻظ´´ÓredisµÄPINGʱ£¬´Óredis³¬Ê± Óû§¿ÉÒÔÉèÖÃÉÏÊö³¬Ê±µÄʱÏÞ£¬²»¹ýҪȷ±£Õâ¸öʱÏÞ±Èrepl-ping-slave-periodµÄÖµÒª´ó£¬·ñÔòÿ´ÎÖ÷redis¶¼»áÈÏΪ´Óredis³¬Ê±¡£
ÎÒÃÇ¿ÉÒÔ¿ØÖÆÔÚÖ÷´Óͬ²½Ê±ÊÇ·ñ½ûÓÃTCP_NODELAY¡£Èç¹û¿ªÆôTCP_NODELAY£¬ÄÇôÖ÷redis»áʹÓøüÉÙµÄTCP°üºÍ¸üÉٵĴø¿íÀ´Ïò´Óredis´«ÊäÊý¾Ý¡£µ«ÊÇÕâ¿ÉÄÜ»áÔö¼ÓһЩͬ²½µÄÑÓ³Ù£¬´ó¸Å»á´ïµ½40ºÁÃë×óÓÒ¡£Èç¹ûÄã¹Ø±ÕÁËTCP_NODELAY£¬ÄÇôÊý¾Ýͬ²½µÄÑÓ³Ùʱ¼ä»á½µµÍ£¬µ«ÊÇ»áÏûºÄ¸ü¶àµÄ´ø¿í¡££¨Èç¹ûÄã²»Á˽âTCP_NODELAY£¬¿ÉÒÔµ½ÕâÀïÀ´¿ÆÆÕһϣ©¡£
repl-disable-tcp-nodelay
no |
ÎÒÃÇ»¹¿ÉÒÔÉèÖÃͬ²½¶ÓÁг¤¶È¡£¶ÓÁг¤¶È£¨backlog)ÊÇÖ÷redisÖеÄÒ»¸ö»º³åÇø£¬ÔÚÓë´Óredis¶Ï¿ªÁ¬½ÓÆÚ¼ä£¬Ö÷redis»áÓÃÕâ¸ö»º³åÇøÀ´»º´æÓ¦¸Ã·¢¸ø´ÓredisµÄÊý¾Ý¡£ÕâÑùµÄ»°£¬µ±´ÓredisÖØÐÂÁ¬½ÓÉÏÖ®ºó£¬¾Í²»±ØÖØÐÂÈ«Á¿Í¬²½Êý¾Ý£¬Ö»ÐèҪͬ²½Õⲿ·ÖÔöÁ¿Êý¾Ý¼´¿É¡£
Èç¹ûÖ÷redisµÈÁËÒ»¶Îʱ¼äÖ®ºó£¬»¹ÊÇÎÞ·¨Á¬½Óµ½´Óredis£¬ÄÇô»º³å¶ÓÁÐÖеÄÊý¾Ý½«±»ÇåÀíµô¡£ÎÒÃÇ¿ÉÒÔÉèÖÃÖ÷redisÒªµÈ´ýµÄʱ¼ä³¤¶È¡£Èç¹ûÉèÖÃΪ0£¬Ôò±íʾÓÀÔ¶²»ÇåÀí¡£Ä¬ÈÏÊÇ1¸öСʱ¡£
ÎÒÃÇ¿ÉÒÔ¸øÖÚ¶àµÄ´ÓredisÉèÖÃÓÅÏȼ¶£¬ÔÚÖ÷redis³ÖÐø¹¤×÷²»Õý³£µÄÇé¿ö£¬ÓÅÏȼ¶¸ßµÄ´Óredis½«»áÉý¼¶ÎªÖ÷redis¡£¶ø±àºÅԽС£¬ÓÅÏȼ¶Ô½¸ß¡£±ÈÈçÒ»¸öÖ÷redisÓÐÈý¸ö´Óredis£¬ÓÅÏȼ¶±àºÅ·Ö±ðΪ10¡¢100¡¢25£¬ÄÇô±àºÅΪ10µÄ´Óredis½«»á±»Ê×ÏÈÑ¡ÖÐÉý¼¶ÎªÖ÷redis¡£µ±ÓÅÏȼ¶±»ÉèÖÃΪ0ʱ£¬Õâ¸ö´Óredis½«ÓÀÔ¶Ò²²»»á±»Ñ¡ÖС£Ä¬ÈϵÄÓÅÏȼ¶Îª100¡£
¼ÙÈçÖ÷redis·¢ÏÖÓг¬¹ýM¸ö´ÓredisµÄÁ¬½ÓÑÓʱ´óÓÚNÃ룬ÄÇôÖ÷redis¾ÍÍ£Ö¹½ÓÊÜÍâÀ´µÄдÇëÇó¡£ÕâÊÇÒòΪ´ÓredisÒ»°ã»áÿÃëÖÓ¶¼ÏòÖ÷redis·¢³öPING£¬¶øÖ÷redis»á¼Ç¼ÿһ¸ö´Óredis×î½üÒ»´Î·¢À´PINGµÄʱ¼äµã£¬ËùÒÔÖ÷redisÄܹ»Á˽âÿһ¸ö´ÓredisµÄÔËÐÐÇé¿ö¡£
min-slaves-to-write
3
min-slaves-max-lag 10 |
ÉÏÃæÕâ¸öÀý×Ó±íʾ£¬¼ÙÈçÓдóÓÚµÈÓÚ3¸ö´ÓredisµÄÁ¬½ÓÑÓ³Ù´óÓÚ10Ã룬ÄÇôÖ÷redis¾Í²»ÔÙ½ÓÊÜÍⲿµÄдÇëÇó¡£ÉÏÊöÁ½¸öÅäÖÃÖÐÓÐÒ»¸ö±»ÖÃΪ0£¬ÔòÕâ¸öÌØÐÔ½«±»¹Ø±Õ¡£Ä¬ÈÏÇé¿öÏÂmin-slaves-to-writeΪ0£¬¶ømin-slaves-max-lagΪ10¡£
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C °²È«¡¿
ÎÒÃÇ¿ÉÒÔÒªÇóredis¿Í»§¶ËÔÚÏòredis-server·¢ËÍÇëÇó֮ǰ£¬ÏȽøÐÐÃÜÂëÑéÖ¤¡£µ±ÄãµÄredis-server´¦ÓÚÒ»¸ö²»Ì«¿ÉÐŵÄÍøÂç»·¾³ÖÐʱ£¬ÏàÐÅÄã»áÓÃÉÏÕâ¸ö¹¦ÄÜ¡£ÓÉÓÚredisÐÔÄܷdz£¸ß£¬ËùÒÔÿÃëÖÓ¿ÉÒÔÍê³É¶à´ï15Íò´ÎµÄÃÜÂë³¢ÊÔ£¬ËùÒÔÄã×îºÃÉèÖÃÒ»¸ö×ã¹»¸´ÔÓµÄÃÜÂ룬·ñÔòºÜÈÝÒ×±»ºÚ¿ÍÆÆ½â¡£
ÕâÀïÎÒÃÇͨ¹ýrequirepass½«ÃÜÂëÉèÖóɡ°Ö¥Â鿪ÃÅ¡±¡£ redisÔÊÐíÎÒÃǶÔredisÖ¸Áî½øÐиüÃû£¬±ÈÈ罫һЩ±È½ÏΣÏÕµÄÃüÁî¸Ä¸öÃû×Ö£¬±ÜÃâ±»ÎóÖ´ÐС£±ÈÈç¿ÉÒÔ°ÑCONFIGÃüÁî¸Ä³ÉÒ»¸öºÜ¸´ÔÓµÄÃû×Ö£¬ÕâÑù¿ÉÒÔ±ÜÃâÍⲿµÄµ÷Óã¬Í¬Ê±»¹¿ÉÒÔÂú×ãÄÚ²¿µ÷ÓõÄÐèÒª£º
rename-command
CONFIG b840fc02d524045429941cc15f59e41cb7be6c89 |
ÎÒÃÇÉõÖÁ¿ÉÒÔ½ûÓõôCONFIGÃüÁÄǾÍÊǰÑCONFIGµÄÃû×ָijÉÒ»¸ö¿Õ×Ö·û´®£º
µ«ÐèҪעÒâµÄÊÇ£¬Èç¹ûÄãʹÓÃAOF·½Ê½½øÐÐÊý¾Ý³Ö¾Ã»¯£¬»òÕßÐèÒªÓë´Óredis½øÐÐͨÐÅ£¬ÄÇô¸ü¸ÄÖ¸ÁîµÄÃû×Ö¿ÉÄÜ»áÒýÆðһЩÎÊÌâ¡£
¡¾½ÌÄã¿´¶®redisÅäÖà -ÏÞÖÆ¡¿
ÎÒÃÇ¿ÉÒÔÉèÖÃredisͬʱ¿ÉÒÔÓë¶àÉÙ¸ö¿Í»§¶Ë½øÐÐÁ¬½Ó¡£Ä¬ÈÏÇé¿öÏÂΪ10000¸ö¿Í»§¶Ë¡£µ±ÄãÎÞ·¨ÉèÖýø³ÌÎļþ¾ä±úÏÞÖÆÊ±£¬redis»áÉèÖÃΪµ±Ç°µÄÎļþ¾ä±úÏÞÖÆÖµ¼õÈ¥32£¬ÒòΪredis»áΪ×ÔÉíÄÚ²¿´¦ÀíÂß¼ÁôһЩ¾ä±ú³öÀ´¡£ Èç¹û´ïµ½ÁË´ËÏÞÖÆ£¬redisÔò»á¾Ü¾øÐµÄÁ¬½ÓÇëÇ󣬲¢ÇÒÏòÕâЩÁ¬½ÓÇëÇó·½·¢³ö¡°max number of
clients reached¡±ÒÔ×÷»ØÓ¦¡£
ÎÒÃÇÉõÖÁ¿ÉÒÔÉèÖÃredis¿ÉÒÔʹÓõÄÄÚ´æÁ¿¡£Ò»µ©µ½´ïÄÚ´æÊ¹ÓÃÉÏÏÞ£¬redis½«»áÊÔÍ¼ÒÆ³ýÄÚ²¿Êý¾Ý£¬ÒƳý¹æÔò¿ÉÒÔͨ¹ýmaxmemory-policyÀ´Ö¸¶¨¡£ Èç¹ûredisÎÞ·¨¸ù¾ÝÒÆ³ý¹æÔòÀ´ÒƳýÄÚ´æÖеÄÊý¾Ý£¬»òÕßÎÒÃÇÉèÖÃÁË¡°²»ÔÊÐíÒÆ³ý¡±£¬ÄÇôredisÔò»áÕë¶ÔÄÇЩÐèÒªÉêÇëÄÚ´æµÄÖ¸Áî·µ»Ø´íÎóÐÅÏ¢£¬±ÈÈçSET¡¢LPUSHµÈ¡£µ«ÊǶÔÓÚÎÞÄÚ´æÉêÇëµÄÖ¸ÁÈÔÈ»»áÕý³£ÏìÓ¦£¬±ÈÈçGETµÈ¡£
ÐèҪעÒâµÄÒ»µãÊÇ£¬Èç¹ûÄãµÄredisÊÇÖ÷redis£¨ËµÃ÷ÄãµÄredisÓдÓredis£©£¬ÄÇôÔÚÉèÖÃÄÚ´æÊ¹ÓÃÉÏÏÞʱ£¬ÐèÒªÔÚϵͳÖÐÁô³öһЩÄÚ´æ¿Õ¼ä¸øÍ¬²½¶ÓÁлº´æ£¬Ö»ÓÐÔÚÄãÉèÖõÄÊÇ¡°²»ÒƳý¡±µÄÇé¿öÏ£¬²Å²»Óÿ¼ÂÇÕâ¸öÒòËØ¡£ ¶ÔÓÚÄÚ´æÒƳý¹æÔòÀ´Ëµ£¬redisÌṩÁ˶à´ï6ÖÖµÄÒÆ³ý¹æÔò¡£ËûÃÇÊÇ£º 1.volatile-lru£ºÊ¹ÓÃLRUËã·¨ÒÆ³ý¹ýÆÚ¼¯ºÏÖеÄkey 2.allkeys-lru£ºÊ¹ÓÃLRUËã·¨ÒÆ³ýkey 3.volatile-random£ºÔÚ¹ýÆÚ¼¯ºÏÖÐÒÆ³ýËæ»úµÄkey 4.allkeys-random£ºÒƳýËæ»úµÄkey 5.volatile-ttl£ºÒƳýÄÇЩTTLÖµ×îСµÄkey£¬¼´ÄÇЩ×î½ü²Å¹ýÆÚµÄkey¡£ 6.noeviction£º²»½øÐÐÒÆ³ý¡£Õë¶Ôд²Ù×÷£¬Ö»ÊÇ·µ»Ø´íÎóÐÅÏ¢¡£ ÎÞÂÛʹÓÃÉÏÊöÄÄÒ»ÖÖÒÆ³ý¹æÔò£¬Èç¹ûûÓкÏÊʵÄkey¿ÉÒÔÒÆ³ýµÄ»°£¬redis¶¼»áÕë¶ÔдÇëÇ󷵻شíÎóÐÅÏ¢¡£
maxmemory-policy
volatile-lru |
LRUËã·¨ºÍ×îСTTLËã·¨¶¼²¢·ÇÊǾ«È·µÄËã·¨£¬¶øÊǹÀËãÖµ¡£ËùÒÔÄã¿ÉÒÔÉèÖÃÑù±¾µÄ´óС¡£¼ÙÈçredisĬÈÏ»á¼ì²éÈý¸ökey²¢Ñ¡ÔñÆäÖÐLRUµÄÄǸö£¬ÄÇôÄã¿ÉÒԸıäÕâ¸ökeyÑù±¾µÄÊýÁ¿¡£
×îºó£¬ÎÒÃDz¹³äÒ»¸öÐÅÏ¢£¬ÄǾÍÊǵ½Ä¿Ç°°æ±¾£¨2.8.4£©ÎªÖ¹£¬redisÖ§³ÖµÄдָÁî°üÀ¨ÁËÈçÏÂÕâЩ£º
set
setnx setex append
incr decr rpush lpush rpushx lpushx linsert
lset rpoplpush sadd
sinter sinterstore sunion sunionstore sdiff
sdiffstore zadd zincrby
zunionstore zinterstore hset hsetnx hmset hincrby
incrby decrby
getset mset msetnx exec sort |
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ×·¼Óģʽ¡¿
ĬÈÏÇé¿öÏ£¬redis»áÒì²½µÄ½«Êý¾Ý³Ö¾Ã»¯µ½´ÅÅÌ¡£ÕâÖÖģʽÔڴ󲿷ÖÓ¦ÓóÌÐòÖÐÒѱ»ÑéÖ¤ÊǺÜÓÐЧµÄ£¬µ«ÊÇÔÚһЩÎÊÌâ·¢Éúʱ£¬±ÈÈç¶Ïµç£¬ÔòÕâÖÖ»úÖÆ¿ÉÄܻᵼÖÂÊý·ÖÖÓµÄдÇëÇó¶ªÊ§¡£ È粩ÎÄÉϰ벿·ÖÖнéÉܵģ¬×·¼ÓÎļþ£¨Append Only File£©ÊÇÒ»ÖÖ¸üºÃµÄ±£³ÖÊý¾ÝÒ»ÖÂÐԵķ½Ê½¡£¼´Ê¹µ±·þÎñÆ÷¶Ïµçʱ£¬Ò²½ö»áÓÐ1ÃëÖÓµÄдÇëÇó¶ªÊ§£¬µ±redis½ø³Ì³öÏÖÎÊÌâÇÒ²Ù×÷ϵͳÔËÐÐÕý³£Ê±£¬ÉõÖÁÖ»»á¶ªÊ§Ò»ÌõдÇëÇó¡£
ÎÒÃǽ¨Òé´ó¼Ò£¬AOF»úÖÆºÍRDB»úÖÆ¿ÉÒÔͬʱʹÓ㬲»»áÓÐÈκγåÍ»¡£¶ÔÓÚÈçºÎ±£³ÖÊý¾ÝÒ»ÖÂÐÔµÄÌÖÂÛ£¬Çë²Î¼û±¾ÎÄ¡£
ÎÒÃÇ»¹¿ÉÒÔÉèÖÃaofÎļþµÄÃû³Æ£º
appendfilename
"appendonly.aof" |
fsync()µ÷Óã¬ÓÃÀ´¸æËß²Ù×÷ϵͳÁ¢¼´½«»º´æµÄÖ¸ÁîдÈë´ÅÅÌ¡£Ò»Ð©²Ù×÷ϵͳ»á¡°Á¢¼´¡±½øÐУ¬¶øÁíÍâһЩ²Ù×÷ϵͳÔò»á¡°¾¡¿ì¡±½øÐС£ redisÖ§³ÖÈýÖÖ²»Í¬µÄģʽ£º 1.no£º²»µ÷ÓÃfsync()¡£¶øÊÇÈòÙ×÷ϵͳ×ÔÐоö¶¨syncµÄʱ¼ä¡£ÕâÖÖģʽÏ£¬redisµÄÐÔÄÜ»á×î¿ì¡£ 2.always£ºÔÚÿ´ÎдÇëÇóºó¶¼µ÷ÓÃfsync()¡£ÕâÖÖģʽÏ£¬redis»áÏà¶Ô½ÏÂý£¬µ«Êý¾Ý×ȫ¡£ 3.everysec£ºÃ¿ÃëÖÓµ÷ÓÃÒ»´Îfsync()¡£ÕâÊÇÐÔÄܺͰ²È«µÄÕÛÖÔ¡£ ĬÈÏÇé¿öÏÂΪeverysec¡£ÓйØÊý¾ÝÒ»ÖÂÐԵĽÒÃØ£¬¿ÉÒԲο¼±¾ÎÄ¡£
µ±fsync·½Ê½ÉèÖÃΪalways»òeverysecʱ£¬Èç¹ûºǫ́³Ö¾Ã»¯½ø³ÌÐèÒªÖ´ÐÐÒ»¸öºÜ´óµÄ´ÅÅÌIO²Ù×÷£¬ÄÇôredis¿ÉÄÜ»áÔÚfsync()µ÷ÓÃʱ¿¨×¡¡£Ä¿Ç°ÉÐδÐÞ¸´Õâ¸öÎÊÌ⣬ÕâÊÇÒòΪ¼´Ê¹ÎÒÃÇÔÚÁíÒ»¸öеÄÏß³ÌÖÐÈ¥Ö´ÐÐfsync()£¬Ò²»á×èÈûסͬ²½Ð´µ÷ÓᣠΪÁË»º½âÕâ¸öÎÊÌ⣬ÎÒÃÇ¿ÉÒÔʹÓÃÏÂÃæµÄÅäÖÃÏÕâÑùµÄ»°£¬µ±BGSAVE»òBGWRITEAOFÔËÐÐʱ£¬fsync()ÔÚÖ÷½ø³ÌÖеĵ÷Óûᱻ×èÖ¹¡£ÕâÒâζ×ŵ±Áíһ·½ø³ÌÕýÔÚ¶ÔAOFÎļþ½øÐÐÖØ¹¹Ê±£¬redisµÄ³Ö¾Ã»¯¹¦ÄܾÍʧЧÁË£¬¾ÍºÃÏñÎÒÃÇÉèÖÃÁË¡°appendsync
none¡±Ò»Ñù¡£Èç¹ûÄãµÄredisÓÐʱÑÓÎÊÌ⣬ÄÇôÇ뽫ÏÂÃæµÄÑ¡ÏîÉèÖÃΪyes¡£·ñÔòÇë±£³Öno£¬ÒòΪÕâÊDZ£Ö¤Êý¾ÝÍêÕûÐÔµÄ×ȫµÄÑ¡Ôñ¡£
no-appendfsync-on-rewrite
no |
ÎÒÃÇÔÊÐíredis×Ô¶¯ÖØÐ´aof¡£µ±aofÔö³¤µ½Ò»¶¨¹æÄ£Ê±£¬redis»áÒþʽµ÷ÓÃBGREWRITEAOFÀ´ÖØÐ´logÎļþ£¬ÒÔËõ¼õÎļþÌå»ý¡£ redisÊÇÕâÑù¹¤×÷µÄ£ºredis»á¼Ç¼ÉÏ´ÎÖØÐ´Ê±µÄaof´óС¡£¼ÙÈçredis×ÔÆô¶¯ÖÁ½ñ»¹Ã»ÓнøÐйýÖØÐ´£¬ÄÇôÆô¶¯Ê±aofÎļþµÄ´óС»á±»×÷Ϊ»ù×¼Öµ¡£Õâ¸ö»ù×¼Öµ»áºÍµ±Ç°µÄaof´óС½øÐбȽϡ£Èç¹ûµ±Ç°aof´óС³¬³öËùÉèÖõÄÔö³¤±ÈÀý£¬Ôò»á´¥·¢ÖØÐ´¡£ÁíÍ⣬Ä㻹ÐèÒªÉèÖÃÒ»¸ö×îС´óС£¬ÊÇΪÁË·ÀÖ¹ÔÚaofºÜСʱ¾Í´¥·¢ÖØÐ´¡£
Hello
World!auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb |
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C LUA½Å±¾¡¿
lua½Å±¾µÄ×î´óÔËÐÐʱ¼äÊÇÐèÒª±»ÑϸñÏÞÖÆµÄ£¬Òª×¢ÒⵥλÊǺÁÃ룺
Èç¹û´ËÖµÉèÖÃΪ0»ò¸ºÊý£¬Ôò¼È²»»áÓб¨´íÒ²²»»áÓÐʱ¼äÏÞÖÆ¡£ ¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ÂýÈÕÖ¾¡¿ redisÂýÈÕÖ¾ÊÇÖ¸Ò»¸öϵͳ½øÐÐÈÕÖ¾²éѯ³¬¹ýÁËÖ¸¶¨µÄʱ³¤¡£Õâ¸öʱ³¤²»°üÀ¨IO²Ù×÷£¬±ÈÈçÓë¿Í»§¶ËµÄ½»»¥¡¢·¢ËÍÏìÓ¦ÄÚÈݵȣ¬¶ø½ö°üÀ¨Êµ¼ÊÖ´ÐвéѯÃüÁîµÄʱ¼ä¡£ Õë¶ÔÂýÈÕÖ¾£¬Äã¿ÉÒÔÉèÖÃÁ½¸ö²ÎÊý£¬Ò»¸öÊÇÖ´ÐÐʱ³¤£¬µ¥Î»ÊÇ΢Ã룬ÁíÒ»¸öÊÇÂýÈÕÖ¾µÄ³¤¶È¡£µ±Ò»¸öеÄÃüÁдÈëÈÕ־ʱ£¬×îÀϵÄÒ»Ìõ»á´ÓÃüÁîÈÕÖ¾¶ÓÁÐÖб»ÒƳý¡£ µ¥Î»ÊÇ΢Ã룬¼´1000000±íʾһÃë¡£¸ºÊýÔò»á½ûÓÃÂýÈÕÖ¾¹¦ÄÜ£¬¶ø0Ôò±íÊ¾Ç¿ÖÆ¼Ç¼ÿһ¸öÃüÁî¡£
slowlog-log-slower-than
10000 |
ÂýÈÕÖ¾×î´ó³¤¶È£¬¿ÉÒÔËæ±ãÌîдÊýÖµ£¬Ã»ÓÐÉÏÏÞ£¬µ«Òª×¢ÒâËü»áÏûºÄÄÚ´æ¡£Äã¿ÉÒÔʹÓÃSLOWLOG RESETÀ´ÖØÉèÕâ¸öÖµ¡£
¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ʼþ֪ͨ¡¿ redis¿ÉÒÔÏò¿Í»§¶Ë֪ͨijЩʼþµÄ·¢Éú¡£Õâ¸öÌØÐԵľßÌå½âÊÍ¿ÉÒԲμû±¾ÎÄ¡£ ¡¾½ÌÄã¿´¶®redisÅäÖà ¨C ¸ß¼¶ÅäÖá¿ ÓйعþÏ£Êý¾Ý½á¹¹µÄһЩÅäÖÃÏ
hash-max-ziplist-entries
512
hash-max-ziplist-value 64 |
ÓйØÁбíÊý¾Ý½á¹¹µÄһЩÅäÖÃÏ
list-max-ziplist-entries
512
list-max-ziplist-value 64 |
Óйؼ¯ºÏÊý¾Ý½á¹¹µÄÅäÖÃÏ
set-max-intset-entries
512 |
ÓйØÓÐÐò¼¯ºÏÊý¾Ý½á¹¹µÄÅäÖÃÏ
zset-max-ziplist-entries
128
zset-max-ziplist-value 64 |
¹ØÓÚÊÇ·ñÐèÒªÔÙ¹þÏ£µÄÅäÖÃÏ
¹ØÓÚ¿Í»§¶ËÊä³ö»º³åµÄ¿ØÖÆÏ
client-output-buffer-limit
normal 0 0 0
client-output-buffer-limit slave 256mb 64mb
60
client-output-buffer-limit pubsub 32mb 8mb 60 |
ÓÐ¹ØÆµÂʵÄÅäÖÃÏ
ÓйØÖØÐ´aofµÄÅäÖÃÏî
aof-rewrite-incremental-fsync
yes |
ÖÁ´Ë£¬redisµÄÈëÃÅÄÚÈݾͽáÊøÁË£¬ÄÚÈÝʵÔÚ²»ÉÙ£¬µ«Ïà¶ÔÀ´Ëµ¶¼ºÜ»ù´¡£¬±¾ÎÄûÓÐÉæ¼°redis¼¯Èº¡¢redis¹¤×÷ÔÀí¡¢redisÔ´Âë¡¢redisÏà¹ØLIB¿âµÈÄÚÈÝ£¬ºóÐø»áÂ½Ðø·îÏ×£¬´ó¼Ò¾´ÇëÆÚ´ý£º£© |