{"id":1416,"date":"2018-06-20T15:09:12","date_gmt":"2018-06-20T07:09:12","guid":{"rendered":"https:\/\/damogame.cn:15443\/wordpress\/?p=1416"},"modified":"2018-06-20T15:09:12","modified_gmt":"2018-06-20T07:09:12","slug":"redis%e5%bf%ab%e9%80%9f%e5%85%a5%e9%97%a8","status":"publish","type":"post","link":"https:\/\/i007.cc\/wordpress\/archives\/1416","title":{"rendered":"Redis\u5feb\u901f\u5165\u95e8"},"content":{"rendered":"<header class=\"article-header\">\n<h1 class=\"article-title\">Redis\u5feb\u901f\u5165\u95e8<\/h1>\n<div class=\"article-meta\"><span class=\"item\"><a id=\"btn-reward\" class=\"btn btn-pay\" target=\"_blank\"><\/a>\u00a5 \u6211\u8981\u6253\u8d4f\u00a0<\/span><span class=\"item\">\u4f5c\u8005\uff1a\u521d\u751f\u4e0d\u60d1<\/span>\u00a0<span id=\"qq-group\">Java\u6280\u672fQQ\u7fa4\uff1a227270512 \/ Linux QQ\u7fa4\uff1a479429477<\/span><\/div>\n<\/header>\n<article><a id=\"article-start\" name=\"article-start\"><\/a><\/p>\n<div><\/div>\n<div id=\"adv-javalive\"><\/div>\n<div class=\"article-content\">\n<p>Redis\u662f\u4e00\u4e2a\u5f00\u6e90\uff0c\u9ad8\u7ea7\u7684\u952e\u503c\u5b58\u50a8\u548c\u4e00\u4e2a\u9002\u7528\u7684\u89e3\u51b3\u65b9\u6848\uff0c\u7528\u4e8e\u6784\u5efa\u9ad8\u6027\u80fd\uff0c\u53ef\u6269\u5c55\u7684Web\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n<p>Redis\u6709\u4e09\u4e2a\u4e3b\u8981\u7279\u70b9\uff0c\u4f7f\u5b83\u4f18\u8d8a\u4e8e\u5176\u5b83\u952e\u503c\u6570\u636e\u5b58\u50a8\u7cfb\u7edf &#8211;<\/p>\n<ul>\n<li>Redis\u5c06\u5176\u6570\u636e\u5e93\u5b8c\u5168\u4fdd\u5b58\u5728\u5185\u5b58\u4e2d\uff0c\u4ec5\u4f7f\u7528\u78c1\u76d8\u8fdb\u884c\u6301\u4e45\u5316\u3002<\/li>\n<li>\u4e0e\u5176\u5b83\u952e\u503c\u6570\u636e\u5b58\u50a8\u76f8\u6bd4\uff0cRedis\u6709\u4e00\u7ec4\u76f8\u5bf9\u4e30\u5bcc\u7684\u6570\u636e\u7c7b\u578b\u3002<\/li>\n<li>Redis\u53ef\u4ee5\u5c06\u6570\u636e\u590d\u5236\u5230\u4efb\u610f\u6570\u91cf\u7684\u4ece\u673a\u4e2d\u3002<\/li>\n<\/ul>\n<p>Redis\u5b98\u65b9\u7f51\u7f51\u7ad9\u662f\uff1a<a href=\"http:\/\/www.redis.io\/\" target=\"_blank\" rel=\"noopener\">http:\/\/www.redis.io\/<\/a>\u00a0\uff0c\u5982\u4e0b\uff1a<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/www.yiibai.com\/uploads\/images\/201702\/2202\/222090243_50067.png\" alt=\"\" \/><\/p>\n<h2 id=\"h2-redis-\"><a class=\"reference-link\" name=\"Redis\u7684\u4f18\u70b9\"><\/a>Redis\u7684\u4f18\u70b9<\/h2>\n<p>\u4ee5\u4e0b\u662f<strong>Redis<\/strong>\u7684\u4e00\u4e9b\u4f18\u70b9\u3002<\/p>\n<ul>\n<li><strong>\u5f02\u5e38\u5feb<\/strong>\u00a0&#8211; Redis\u975e\u5e38\u5feb\uff0c\u6bcf\u79d2\u53ef\u6267\u884c\u5927\u7ea6<code>110000<\/code>\u6b21\u7684\u8bbe\u7f6e(<code>SET<\/code>)\u64cd\u4f5c\uff0c\u6bcf\u79d2\u5927\u7ea6\u53ef\u6267\u884c<code>81000<\/code>\u6b21\u7684\u8bfb\u53d6\/\u83b7\u53d6(<code>GET<\/code>)\u64cd\u4f5c\u3002<\/li>\n<li><strong>\u652f\u6301\u4e30\u5bcc\u7684\u6570\u636e\u7c7b\u578b<\/strong>\u00a0&#8211; Redis\u652f\u6301\u5f00\u53d1\u4eba\u5458\u5e38\u7528\u7684\u5927\u591a\u6570\u6570\u636e\u7c7b\u578b\uff0c\u4f8b\u5982\u5217\u8868\uff0c\u96c6\u5408\uff0c\u6392\u5e8f\u96c6\u548c\u6563\u5217\u7b49\u7b49\u3002\u8fd9\u4f7f\u5f97Redis\u5f88\u5bb9\u6613\u88ab\u7528\u6765\u89e3\u51b3\u5404\u79cd\u95ee\u9898\uff0c\u56e0\u4e3a\u6211\u4eec\u77e5\u9053\u54ea\u4e9b\u95ee\u9898\u53ef\u4ee5\u66f4\u597d\u4f7f\u7528\u5730\u54ea\u4e9b\u6570\u636e\u7c7b\u578b\u6765\u5904\u7406\u89e3\u51b3\u3002<\/li>\n<li><strong>\u64cd\u4f5c\u5177\u6709\u539f\u5b50\u6027<\/strong>\u00a0&#8211; \u6240\u6709Redis\u64cd\u4f5c\u90fd\u662f\u539f\u5b50\u64cd\u4f5c\uff0c\u8fd9\u786e\u4fdd\u5982\u679c\u4e24\u4e2a\u5ba2\u6237\u7aef\u5e76\u53d1\u8bbf\u95ee\uff0cRedis\u670d\u52a1\u5668\u80fd\u63a5\u6536\u66f4\u65b0\u7684\u503c\u3002<\/li>\n<li><strong>\u591a\u5b9e\u7528\u5de5\u5177<\/strong>\u00a0&#8211; Redis\u662f\u4e00\u4e2a\u591a\u5b9e\u7528\u5de5\u5177\uff0c\u53ef\u7528\u4e8e\u591a\u79cd\u7528\u4f8b\uff0c\u5982\uff1a\u7f13\u5b58\uff0c\u6d88\u606f\u961f\u5217(Redis\u672c\u5730\u652f\u6301\u53d1\u5e03\/\u8ba2\u9605)\uff0c\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u4efb\u4f55\u77ed\u671f\u6570\u636e\uff0c\u4f8b\u5982\uff0cweb\u5e94\u7528\u7a0b\u5e8f\u4e2d\u7684\u4f1a\u8bdd\uff0c\u7f51\u9875\u547d\u4e2d\u8ba1\u6570\u7b49\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-redis-\"><a class=\"reference-link\" name=\"Redis\u4e0e\u5176\u4ed6\u952e\u503c\u5b58\u50a8\u7cfb\u7edf\"><\/a>Redis\u4e0e\u5176\u4ed6\u952e\u503c\u5b58\u50a8\u7cfb\u7edf<\/h2>\n<ul>\n<li>Redis\u662f\u952e\u503c\u6570\u636e\u5e93\u7cfb\u7edf\u7684\u4e0d\u540c\u8fdb\u5316\u8def\u7ebf\uff0c\u5b83\u7684\u503c\u53ef\u4ee5\u5305\u542b\u66f4\u590d\u6742\u7684\u6570\u636e\u7c7b\u578b\uff0c\u53ef\u5728\u8fd9\u4e9b\u6570\u636e\u7c7b\u578b\u4e0a\u5b9a\u4e49\u539f\u5b50\u64cd\u4f5c\u3002<\/li>\n<li>Redis\u662f\u4e00\u4e2a\u5185\u5b58\u6570\u636e\u5e93\uff0c\u4f46\u5728\u78c1\u76d8\u6570\u636e\u5e93\u4e0a\u662f\u6301\u4e45\u7684\uff0c\u56e0\u6b64\u5b83\u4ee3\u8868\u4e86\u4e00\u4e2a\u4e0d\u540c\u7684\u6743\u8861\uff0c\u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u5728\u4e0d\u80fd\u5927\u4e8e\u5b58\u50a8\u5668(\u5185\u5b58)\u7684\u6570\u636e\u96c6\u7684\u9650\u5236\u4e0b\u5b9e\u73b0\u975e\u5e38\u9ad8\u7684\u5199\u548c\u8bfb\u901f\u5ea6\u3002<\/li>\n<li>\u5185\u5b58\u6570\u636e\u5e93\u7684\u53e6\u4e00\u4e2a\u4f18\u70b9\u662f\uff0c\u5b83\u4e0e\u78c1\u76d8\u4e0a\u7684\u76f8\u540c\u6570\u636e\u7ed3\u6784\u76f8\u6bd4\uff0c\u590d\u6742\u6570\u636e\u7ed3\u6784\u5728\u5185\u5b58\u4e2d\u5b58\u50a8\u8868\u793a\u66f4\u5bb9\u6613\u64cd\u4f5c\u3002 \u56e0\u6b64\uff0cRedis\u53ef\u4ee5\u505a\u5f88\u5c11\u7684\u5185\u90e8\u590d\u6742\u6027\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-1-redis-\"><a class=\"reference-link\" name=\"1. Redis\u73af\u5883\u5b89\u88c5\u914d\u7f6e\"><\/a>1. Redis\u73af\u5883\u5b89\u88c5\u914d\u7f6e<\/h2>\n<p>\u5728\u672c\u7ae0\u4e2d\uff0c\u60a8\u5c06\u4e86\u89e3\u548c\u5b66\u4e60Redis\u7684\u73af\u5883\u5b89\u88c5\u8bbe\u7f6e\u3002<\/p>\n<h2 id=\"h2--ubuntu-redis\"><a class=\"reference-link\" name=\"\u5728Ubuntu\u4e0a\u5b89\u88c5Redis\"><\/a>\u5728Ubuntu\u4e0a\u5b89\u88c5Redis<\/h2>\n<p>\u8981\u5728Ubuntu\u4e0a\u5b89\u88c5Redis\uff0c\u6253\u5f00\u7ec8\u7aef\u5e76\u952e\u5165\u4ee5\u4e0b\u547d\u4ee4 &#8211;<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ sudo apt-get update \r\n[yiibai@ubuntu:~]$ sudo apt-get install redis-server\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u8fd9\u5c06\u5728Ubuntu\u673a\u5668\u4e0a\u5b89\u88c5Redis\u3002<\/p>\n<p><strong>\u542f\u52a8Redis<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ redis-server\r\n[2988] 07 Feb 17:09:42.485 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server \/path\/to\/redis.conf\r\n[2988] 07 Feb 17:09:42.488 # Unable to set the max number of files limit to 10032 (Operation not permitted), setting the max clients configuration to 3984.\r\n[2988] 07 Feb 17:09:42.490 # Warning: 32 bit instance detected but no memory lim\r\n                _._\r\n           _.-``__ ''-._\r\n      _.-``    `.  `_.  ''-._           Redis 2.8.4 (00000000\/0) 32 bit\r\n  .-`` .-```.  ```\\\/    _.,_ ''-._\r\n (    '      ,       .-`  | `,    )     Running in stand alone mode\r\n |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379\r\n |    `-._   `._    \/     _.-'    |     PID: 2988\r\n  `-._    `-._  `-.\/  _.-'    _.-'\r\n |`-._`-._    `-.__.-'    _.-'_.-'|\r\n |    `-._`-._        _.-'_.-'    |           http:\/\/redis.io\r\n  `-._    `-._`-.__.-'_.-'    _.-'\r\n |`-._`-._    `-.__.-'    _.-'_.-'|\r\n |    `-._`-._        _.-'_.-'    |\r\n  `-._    `-._`-.__.-'_.-'    _.-'\r\n      `-._    `-.__.-'    _.-'\r\n          `-._        _.-'\r\n              `-.__.-'\r\n\r\n[2988] 07 Feb 17:09:42.581 # Server started, Redis version 2.8.4\r\n[2988] 07 Feb 17:09:42.582 # WARNING overcommit_memory is set to 0! Background s                                                                                        ' to \/etc\/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_m\r\n[2988] 07 Feb 17:09:42.582 * The server is now ready to accept connections on po\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u68c0\u67e5Redis\u662f\u5426\u6b63\u5728\u5de5\u4f5c<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ redis-cli\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u8fd9\u5c06\u6253\u5f00\u4e00\u4e2a<strong>redis<\/strong>\u63d0\u793a\uff0c\u5982\u4e0b\u6240\u793a &#8211;<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt;\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u63d0\u793a\u4e2d\uff0c<code>127.0.0.1<\/code>\u662f\u8ba1\u7b97\u673a\u7684IP\u5730\u5740\uff0c<code>6379<\/code>\u662f\u8fd0\u884c<strong>Redis<\/strong>\u670d\u52a1\u5668\u7684\u7aef\u53e3\u3002 \u73b0\u5728\u952e\u5165\u4ee5\u4e0b<code>PING<\/code>\u547d\u4ee4\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; ping \r\nPONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u8fd9\u8868\u660e<strong>Redis<\/strong>\u5df2\u6210\u529f\u5728\u60a8\u7684\u8ba1\u7b97\u673a\u4e0a\u5b89\u88c5\u4e86\u3002<\/p>\n<p>\u5728Ubuntu\u4e0a\u5b89\u88c5<strong>Redis\u684c\u9762\u7ba1\u7406<\/strong><\/p>\n<p>\u8981\u5728Ubuntu\u4e0a\u5b89\u88c5<strong>Redis<\/strong>\u684c\u9762\u7ba1\u7406\u5668\uff0c\u53ef\u4ece\u00a0<a href=\"http:\/\/redisdesktop.com\/download\" target=\"_blank\" rel=\"noopener\">http:\/\/redisdesktop.com\/download<\/a>\u00a0\u4e0b\u8f7d\u8be5\u8f6f\u4ef6\u5305\uff0c\u5b89\u88c5\u5373\u53ef\u3002<\/p>\n<p>\u6253\u5f00\u4e0b\u8f7d\u7684\u8f6f\u4ef6\u5305\u5e76\u5b89\u88c5\u3002<\/p>\n<p><strong>Redis\u684c\u9762\u7ba1\u7406\u5668<\/strong>\u5c06\u63d0\u4f9b\u7528\u4e8e\u7ba1\u7406Redis\u7684\u952e\u548c\u6570\u636e\u7684UI\u3002<\/p>\n<h2 id=\"h2-2-redis-\"><a class=\"reference-link\" name=\"2. Redis\u914d\u7f6e\"><\/a>2. Redis\u914d\u7f6e<\/h2>\n<p>\u5728Redis\u4e2d\uff0c\u5728Redis\u7684\u6839\u76ee\u5f55\u4e0b\u6709\u4e00\u4e2a\u914d\u7f6e\u6587\u4ef6(<code>redis.conf<\/code>)\u3002\u5f53\u7136\u60a8\u53ef\u4ee5\u901a\u8fc7Redis\u00a0<code>CONFIG<\/code>\u547d\u4ee4\u83b7\u53d6\u548c\u8bbe\u7f6e\u6240\u6709\u7684<strong>Redis<\/strong>\u914d\u7f6e\u3002<\/p>\n<p><strong>\u8bed\u6cd5<\/strong><br \/>\n\u4ee5\u4e0b\u662fRedis\u4e2d\u7684<code>CONFIG<\/code>\u547d\u4ee4\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; CONFIG GET CONFIG_SETTING_NAME\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; CONFIG GET loglevel  \r\n1) \"loglevel\" \r\n2) \"notice\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<blockquote><p>\u8981\u83b7\u53d6\u6240\u6709\u914d\u7f6e\u8bbe\u7f6e\uff0c\u8bf7\u4f7f\u7528<code>*<\/code>\u4ee3\u66ff<code>CONFIG_SETTING_NAME<\/code><\/p><\/blockquote>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; CONFIG GET *\r\n  1) \"dbfilename\"\r\n  2) \"dump.rdb\"\r\n  3) \"requirepass\"\r\n  4) \"\"\r\n  5) \"masterauth\"\r\n  6) \"\"\r\n  7) \"unixsocket\"\r\n  8) \"\"\r\n  9) \"logfile\"\r\n 10) \"\/var\/log\/redis\/redis-server.log\"\r\n 11) \"pidfile\"\r\n 12) \"\/var\/run\/redis\/redis-server.pid\"\r\n 13) \"maxmemory\"\r\n 14) \"3221225472\"\r\n 15) \"maxmemory-samples\"\r\n 16) \"3\"\r\n 17) \"timeout\"\r\n 18) \"0\"\r\n 19) \"tcp-keepalive\"\r\n 20) \"0\"\r\n 21) \"auto-aof-rewrite-percentage\"\r\n 22) \"100\"\r\n 23) \"auto-aof-rewrite-min-size\"\r\n 24) \"67108864\"\r\n 25) \"hash-max-ziplist-entries\"\r\n 26) \"512\"\r\n 27) \"hash-max-ziplist-value\"\r\n 28) \"64\"\r\n 29) \"list-max-ziplist-entries\"\r\n 30) \"512\"\r\n 31) \"list-max-ziplist-value\"\r\n 32) \"64\"\r\n 33) \"set-max-intset-entries\"\r\n 34) \"512\"\r\n 35) \"zset-max-ziplist-entries\"\r\n 36) \"128\"\r\n 37) \"zset-max-ziplist-value\"\r\n 38) \"64\"\r\n 39) \"lua-time-limit\"\r\n 40) \"5000\"\r\n 41) \"slowlog-log-slower-than\"\r\n 42) \"10000\"\r\n 43) \"slowlog-max-len\"\r\n 44) \"128\"\r\n 45) \"port\"\r\n 46) \"6379\"\r\n 47) \"databases\"\r\n 48) \"16\"\r\n 49) \"repl-ping-slave-period\"\r\n 50) \"10\"\r\n 51) \"repl-timeout\"\r\n 52) \"60\"\r\n 53) \"repl-backlog-size\"\r\n 54) \"1048576\"\r\n 55) \"repl-backlog-ttl\"\r\n 56) \"3600\"\r\n 57) \"maxclients\"\r\n 58) \"3984\"\r\n 59) \"watchdog-period\"\r\n 60) \"0\"\r\n 61) \"slave-priority\"\r\n 62) \"100\"\r\n 63) \"min-slaves-to-write\"\r\n 64) \"0\"\r\n 65) \"min-slaves-max-lag\"\r\n 66) \"10\"\r\n 67) \"hz\"\r\n 68) \"10\"\r\n 69) \"no-appendfsync-on-rewrite\"\r\n 70) \"no\"\r\n 71) \"slave-serve-stale-data\"\r\n 72) \"yes\"\r\n 73) \"slave-read-only\"\r\n 74) \"yes\"\r\n 75) \"stop-writes-on-bgsave-error\"\r\n 76) \"yes\"\r\n 77) \"daemonize\"\r\n 78) \"yes\"\r\n 79) \"rdbcompression\"\r\n 80) \"yes\"\r\n 81) \"rdbchecksum\"\r\n 82) \"yes\"\r\n 83) \"activerehashing\"\r\n 84) \"yes\"\r\n 85) \"repl-disable-tcp-nodelay\"\r\n 86) \"no\"\r\n 87) \"aof-rewrite-incremental-fsync\"\r\n 88) \"yes\"\r\n 89) \"appendonly\"\r\n 90) \"no\"\r\n 91) \"dir\"\r\n 92) \"\/var\/lib\/redis\"\r\n 93) \"maxmemory-policy\"\r\n 94) \"noeviction\"\r\n 95) \"appendfsync\"\r\n 96) \"everysec\"\r\n 97) \"save\"\r\n 98) \"900 1 300 10 60 10000\"\r\n 99) \"loglevel\"\r\n100) \"notice\"\r\n101) \"client-output-buffer-limit\"\r\n102) \"normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60\"\r\n103) \"unixsocketperm\"\r\n104) \"0\"\r\n105) \"slaveof\"\r\n106) \"\"\r\n107) \"notify-keyspace-events\"\r\n108) \"\"\r\n109) \"bind\"\r\n110) \"127.0.0.1\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-u7F16u8F91u914Du7F6E\"><a class=\"reference-link\" name=\"\u7f16\u8f91\u914d\u7f6e\"><\/a>\u7f16\u8f91\u914d\u7f6e<\/h2>\n<p>\u8981\u66f4\u65b0\u914d\u7f6e\uff0c\u53ef\u4ee5\u76f4\u63a5\u7f16\u8f91<code>redis.conf<\/code>\u6587\u4ef6\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7<code>CONFIG set<\/code>\u547d\u4ee4\u66f4\u65b0\u914d\u7f6e\u3002<\/p>\n<p><strong>\u8bed\u6cd5<\/strong><br \/>\n\u4ee5\u4e0b\u662f<code>CONFIG SET<\/code>\u547d\u4ee4\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; CONFIG SET loglevel \"notice\" \r\nOK \r\nredis 127.0.0.1:6379&gt; CONFIG GET loglevel  \r\n1) \"loglevel\" \r\n2) \"notice\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-3-redis-\"><a class=\"reference-link\" name=\"3. Redis\u6570\u636e\u7c7b\u578b\"><\/a>3. Redis\u6570\u636e\u7c7b\u578b<\/h2>\n<p>Redis\u652f\u6301<code>5<\/code>\u79cd\u6570\u636e\u7c7b\u578b\u3002<\/p>\n<h2 id=\"h2-u5B57u7B26u4E32\"><a class=\"reference-link\" name=\"\u5b57\u7b26\u4e32\"><\/a>\u5b57\u7b26\u4e32<\/h2>\n<p>Redis\u4e2d\u7684\u5b57\u7b26\u4e32\u662f\u4e00\u4e2a\u5b57\u8282\u5e8f\u5217\u3002Redis\u4e2d\u7684\u5b57\u7b26\u4e32\u662f\u4e8c\u8fdb\u5236\u5b89\u5168\u7684\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4eec\u7684\u957f\u5ea6\u4e0d\u7531\u4efb\u4f55\u7279\u6b8a\u7684\u7ec8\u6b62\u5b57\u7b26\u51b3\u5b9a\u3002\u56e0\u6b64\uff0c\u53ef\u4ee5\u5728\u4e00\u4e2a\u5b57\u7b26\u4e32\u4e2d\u5b58\u50a8\u9ad8\u8fbe<code>512<\/code>\u5146\u5b57\u8282\u7684\u4efb\u4f55\u5185\u5bb9\u3002<\/p>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; set name \"yiibai.com\" \r\nOK \r\nredis 127.0.0.1:6379&gt; get name \r\n\"yiibai.com\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u793a\u4f8b\u4e2d\uff0c<code>set<\/code>\u548c<code>get<\/code>\u662fRedis\u547d\u4ee4\uff0c<code>name<\/code>\u662fRedis\u4e2d\u4f7f\u7528\u7684\u952e\uff0c<code>yiibai.com<\/code>\u662f\u5b58\u50a8\u5728Redis\u4e2d\u7684\u5b57\u7b26\u4e32\u7684\u503c\u3002<\/p>\n<blockquote><p>\u6ce8 &#8211; Redis\u547d\u4ee4\u4e0d\u533a\u5206\u5927\u5c0f\u5199\uff0c\u5982<code>SET<\/code>,<code>Set<\/code>\u548c<code>set<\/code>\u90fd\u662f\u540c\u4e00\u4e2a\u547d\u4ee4\u3002\u5b57\u7b26\u4e32\u503c\u7684\u6700\u5927\u957f\u5ea6\u4e3a 512MB\u3002<\/p><\/blockquote>\n<h2 id=\"h2--\"><a class=\"reference-link\" name=\"\u6563\u5217\/\u54c8\u5e0c\"><\/a>\u6563\u5217\/\u54c8\u5e0c<\/h2>\n<p>Redis\u6563\u5217\/\u54c8\u5e0c(Hashes)\u662f\u952e\u503c\u5bf9\u7684\u96c6\u5408\u3002Redis\u6563\u5217\/\u54c8\u5e0c\u662f\u5b57\u7b26\u4e32\u5b57\u6bb5\u548c\u5b57\u7b26\u4e32\u503c\u4e4b\u95f4\u7684\u6620\u5c04\u3002\u56e0\u6b64\uff0c\u5b83\u4eec\u7528\u4e8e\u8868\u793a\u5bf9\u8c61\u3002<\/p>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; HMSET ukey username \"yiibai\" password \"passswd123\" points 200\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u8ff0\u793a\u4f8b\u4e2d\uff0c\u6563\u5217\/\u54c8\u5e0c\u6570\u636e\u7c7b\u578b\u7528\u4e8e\u5b58\u50a8\u5305\u542b\u7528\u6237\u7684\u57fa\u672c\u4fe1\u606f\u7684\u7528\u6237\u5bf9\u8c61\u3002\u8fd9\u91cc<code>HMSET<\/code>\uff0c<code>HGETALL<\/code>\u662fRedis\u7684\u547d\u4ee4\uff0c\u800c<code>ukey<\/code>\u662f\u952e\u7684\u540d\u79f0\u3002<\/p>\n<p>\u6bcf\u4e2a\u6563\u5217\/\u54c8\u5e0c\u53ef\u4ee5\u5b58\u50a8\u591a\u8fbe<code>2^32 - 1<\/code>\u4e2a\u5065-\u503c\u5bf9(\u8d85\u8fc7<code>40<\/code>\u4ebf\u4e2a)\u3002<\/p>\n<h2 id=\"h2-u5217u8868\"><a class=\"reference-link\" name=\"\u5217\u8868\"><\/a>\u5217\u8868<\/h2>\n<p>Redis\u5217\u8868\u53ea\u662f\u5b57\u7b26\u4e32\u5217\u8868\uff0c\u6309\u63d2\u5165\u987a\u5e8f\u6392\u5e8f\u3002\u60a8\u53ef\u4ee5\u5411Redis\u5217\u8868\u7684\u5934\u90e8\u6216\u5c3e\u90e8\u6dfb\u52a0\u5143\u7d20\u3002<\/p>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; lpush alist redis \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; lpush alist mongodb \r\n(integer) 2 \r\nredis 127.0.0.1:6379&gt; lpush alist sqlite \r\n(integer) 3 \r\nredis 127.0.0.1:6379&gt; lrange alist 0 10  \r\n\r\n1) \"sqlite\" \r\n2) \"mongodb\" \r\n3) \"redis\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5217\u8868\u7684\u6700\u5927\u957f\u5ea6\u4e3a<code>2^32 - 1<\/code>\u4e2a\u5143\u7d20(<code>4294967295<\/code>\uff0c\u6bcf\u4e2a\u5217\u8868\u53ef\u5bb9\u7eb3\u8d85\u8fc7<code>40<\/code>\u4ebf\u4e2a\u5143\u7d20)\u3002<\/p>\n<h2 id=\"h2-u96C6u5408\"><a class=\"reference-link\" name=\"\u96c6\u5408\"><\/a>\u96c6\u5408<\/h2>\n<p>Redis\u96c6\u5408\u662f\u5b57\u7b26\u4e32\u7684\u65e0\u5e8f\u96c6\u5408\u3002\u5728Redis\u4e2d\uff0c\u60a8\u53ef\u4ee5\u6dfb\u52a0\uff0c\u5220\u9664\u548c\u6d4b\u8bd5\u6210\u5458\u5b58\u5728\u7684\u65f6\u95f4O(1)\u590d\u6742\u6027\u3002<\/p>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; sadd yiibailist redis \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; sadd yiibailist mongodb \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; sadd yiibailist sqlite \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; sadd yiibailist sqlite \r\n(integer) 0 \r\nredis 127.0.0.1:6379&gt; smembers yiibailist  \r\n\r\n1) \"sqlite\" \r\n2) \"mongodb\" \r\n3) \"redis\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<blockquote><p>\u6ce8\u610f &#8211; \u5728\u4e0a\u9762\u7684\u793a\u4f8b\u4e2d\uff0c<code>sqlite<\/code>\u88ab\u6dfb\u52a0\u4e86\u4e24\u6b21\uff0c\u4f46\u662f\u7531\u4e8e\u96c6\u5408\u7684\u552f\u4e00\u5c5e\u6027\uff0c\u6240\u4ee5\u5b83\u53ea\u7b97\u6dfb\u52a0\u4e00\u6b21\u3002<\/p><\/blockquote>\n<p>\u4e00\u4e2a\u96c6\u5408\u4e2d\u7684\u6700\u5927\u6210\u5458\u6570\u91cf\u4e3a<code>2^32 - 1<\/code>(\u5373<code>4294967295<\/code>\uff0c\u6bcf\u4e2a\u96c6\u5408\u4e2d\u5143\u7d20\u6570\u91cf\u53ef\u8fbe<code>40<\/code>\u4ebf\u4e2a)\u4e2a\u3002<\/p>\n<h2 id=\"h2-u53EFu6392u5E8Fu96C6u5408\"><a class=\"reference-link\" name=\"\u53ef\u6392\u5e8f\u96c6\u5408\"><\/a>\u53ef\u6392\u5e8f\u96c6\u5408<\/h2>\n<p>Redis\u53ef\u6392\u5e8f\u96c6\u5408\u7c7b\u4f3c\u4e8eRedis\u96c6\u5408\uff0c\u662f\u4e0d\u91cd\u590d\u7684\u5b57\u7b26\u96c6\u5408\u3002 \u4e0d\u540c\u4e4b\u5904\u5728\u4e8e\uff0c\u6392\u5e8f\u96c6\u5408\u7684\u6bcf\u4e2a\u6210\u5458\u90fd\u4e0e\u5206\u6570\u76f8\u5173\u8054\uff0c\u8fd9\u4e2a\u5206\u6570\u7528\u4e8e\u6309\u6700\u5c0f\u5206\u6570\u5230\u6700\u5927\u5206\u6570\u6765\u6392\u5e8f\u7684\u6392\u5e8f\u96c6\u5408\u3002\u867d\u7136\u6210\u5458\u662f\u552f\u4e00\u7684\uff0c\u4f46\u5206\u6570\u503c\u53ef\u4ee5\u91cd\u590d\u3002<\/p>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; zadd yiibaiset 0 redis\r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; zadd yiibaiset 0 mongodb\r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; zadd yiibaiset 1 sqlite\r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; zadd yiibaiset 1 sqlite\r\n(integer) 0 \r\nredis 127.0.0.1:6379&gt; ZRANGEBYSCORE yiibaiset 0 1000  \r\n\r\n1) \"mongodb\" \r\n2) \"redis\" \r\n3) \"sqlite\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u56e0\u4e3a \u2018<code>sqlite<\/code>\u2018 \u7684\u6392\u5e8f\u503c\u662f 1 \uff0c\u5176\u5b83\u4e24\u4e2a\u5143\u7d20\u7684\u6392\u5e8f\u503c\u662f 0 \uff0c\u6240\u4ee5 \u2018<code>sqlite<\/code>\u2018 \u6392\u5728\u6700\u540e\u4e00\u4e2a\u4f4d\u7f6e\u4e0a\u3002<\/p>\n<h2 id=\"h2-4-redis-\"><a class=\"reference-link\" name=\"4. Redis\u547d\u4ee4\"><\/a>4. Redis\u547d\u4ee4<\/h2>\n<p>Redis\u547d\u4ee4\u662f\u7528\u4e8e\u5728Redis\u670d\u52a1\u5668\u4e0a\u6267\u884c\u4e00\u4e9b\u64cd\u4f5c\u3002<br \/>\n\u8981\u5728Redis\u670d\u52a1\u5668\u4e0a\u8fd0\u884c\u547d\u4ee4\uff0c\u9700\u8981\u4e00\u4e2aRedis\u5ba2\u6237\u7aef\u3002Redis\u5ba2\u6237\u7aef\u5728Redis\u5305\u4e2d\u6709\u63d0\u4f9b\uff0c\u8fd9\u4e2a\u5305\u5728\u6211\u4eec\u524d\u9762\u7684\u5b89\u88c5\u6559\u7a0b\u4e2d\u5c31\u6709\u5b89\u88c5\u8fc7\u4e86\u3002<\/p>\n<p><strong>\u8bed\u6cd5<\/strong><br \/>\n\u4ee5\u4e0b\u662fRedis\u5ba2\u6237\u7aef\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ redis-cli\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><br \/>\n\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u4e86\u5982\u4f55\u542f\u52a8Redis\u5ba2\u6237\u7aef\u3002<\/p>\n<p>\u8981\u542f\u52a8Redis\u5ba2\u6237\u7aef\uff0c\u8bf7\u6253\u5f00\u7ec8\u7aef\u5e76\u952e\u5165\u547d\u4ee4<code>redis-cli<\/code>\u3002 \u8fd9\u5c06\u8fde\u63a5\u5230\u60a8\u7684\u672c\u5730Redis\u670d\u52a1\u5668\uff0c\u73b0\u5728\u53ef\u4ee5\u8fd0\u884c\u4efb\u4f55\u7684Redis\u547d\u4ee4\u4e86\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$redis-cli \r\nredis 127.0.0.1:6379&gt; \r\nredis 127.0.0.1:6379&gt; PING  \r\nPONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u793a\u4f8b\u4e2d\uff0c\u8fde\u63a5\u5230\u5230\u5728\u672c\u5730\u673a\u5668\u4e0a\u8fd0\u884c\u7684Redis\u670d\u52a1\u5668\u5e76\u6267\u884c<code>PING<\/code>\u547d\u4ee4\uff0c\u8be5\u547d\u4ee4\u68c0\u67e5\u670d\u52a1\u5668\u662f\u5426\u6b63\u5728\u8fd0\u884c\u3002<\/p>\n<h2 id=\"h2-u5728u8FDCu7A0Bu670Du52A1u5668u4E0Au8FD0u884Cu547Du4EE4\"><a class=\"reference-link\" name=\"\u5728\u8fdc\u7a0b\u670d\u52a1\u5668\u4e0a\u8fd0\u884c\u547d\u4ee4\"><\/a>\u5728\u8fdc\u7a0b\u670d\u52a1\u5668\u4e0a\u8fd0\u884c\u547d\u4ee4<\/h2>\n<p>\u8981\u5728Redis\u8fdc\u7a0b\u670d\u52a1\u5668\u4e0a\u8fd0\u884c\u547d\u4ee4\uff0c\u9700\u8981\u901a\u8fc7\u5ba2\u6237\u7aef<code>redis-cli<\/code>\u8fde\u63a5\u5230\u670d\u52a1\u5668<\/p>\n<p><strong>\u8bed\u6cd5<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ redis-cli -h host -p port -a password\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><br \/>\n\u4ee5\u4e0b\u793a\u4f8b\u663e\u793a\u5982\u4f55\u8fde\u63a5\u5230Redis\u8fdc\u7a0b\u670d\u52a1\u5668\uff0c\u5728\u4e3b\u673a(host)<code>127.0.0.1<\/code>\uff0c\u7aef\u53e3(port)<code>6379<\/code>\u4e0a\u8fd0\u884c\uff0c\u5e76\u4f7f\u7528\u5bc6\u7801\u4e3a\u00a0<code>mypass<\/code>\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">[yiibai@ubuntu:~]$ redis-cli -h 127.0.0.1 -p 6379 -a \"mypass\" \r\nredis 127.0.0.1:6379&gt; \r\nredis 127.0.0.1:6379&gt; PING  \r\nPONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-5-redis-\"><a class=\"reference-link\" name=\"5. Redis\u952e\u547d\u4ee4\"><\/a>5. Redis\u952e\u547d\u4ee4<\/h2>\n<p>Redis\u952e\u547d\u4ee4\u7528\u4e8e\u7ba1\u7406<strong>Redis<\/strong>\u4e2d\u7684\u952e\u3002\u4ee5\u4e0b\u662f\u4f7f\u7528redis\u952e\u547d\u4ee4\u7684\u8bed\u6cd5\u3002<\/p>\n<p><strong>\u8bed\u6cd5<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; COMMAND KEY_NAME\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; SET akey redis\r\nOK \r\nredis 127.0.0.1:6379&gt; DEL akey\r\n(integer) 1\r\n127.0.0.1:6379&gt; GET akey\r\n(nil)\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u4f8b\u5b50\u4e2d\uff0c<code>DEL<\/code>\u662fRedis\u7684\u547d\u4ee4\uff0c\u800c<code>akey<\/code>\u662f\u952e\u7684\u540d\u79f0\u3002\u5982\u679c\u952e\u88ab\u5220\u9664\uff0c\u5219\u547d\u4ee4\u7684\u8f93\u51fa\u5c06\u4e3a<code>(integer) 1<\/code>\uff0c\u5426\u5219\u4e3a<code>(integer) 0<\/code>\u3002<\/p>\n<h2 id=\"h2-redis-\"><a class=\"reference-link\" name=\"Redis\u952e\u547d\u4ee4\"><\/a>Redis\u952e\u547d\u4ee4<\/h2>\n<p>\u4e0b\u8868\u5217\u51fa\u4e86\u4e0e\u952e\u76f8\u5173\u7684\u4e00\u4e9b\u57fa\u672c\u547d\u4ee4\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u7f16\u53f7<\/th>\n<th>\u547d\u4ee4<\/th>\n<th>\u63cf\u8ff0<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td><a title=\"DEL key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_del.html\" target=\"_blank\" rel=\"noopener\">DEL key<\/a><\/td>\n<td>\u6b64\u547d\u4ee4\u5220\u9664\u4e00\u4e2a\u6307\u5b9a\u952e(\u5982\u679c\u5b58\u5728)\u3002<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td><a title=\"DUMP key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_dump.html\" target=\"_blank\" rel=\"noopener\">DUMP key<\/a><\/td>\n<td>\u6b64\u547d\u4ee4\u8fd4\u56de\u5b58\u50a8\u5728\u6307\u5b9a\u952e\u7684\u503c\u7684\u5e8f\u5217\u5316\u7248\u672c\u3002<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td><a title=\"EXISTS key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_exists.html\" target=\"_blank\" rel=\"noopener\">EXISTS key<\/a><\/td>\n<td>\u6b64\u547d\u4ee4\u68c0\u67e5\u952e\u662f\u5426\u5b58\u5728\u3002<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td><a title=\"EXPIRE key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_expire.html\" target=\"_blank\" rel=\"noopener\">EXPIRE key seconds<\/a><\/td>\n<td>\u8bbe\u7f6e\u952e\u5728\u6307\u5b9a\u65f6\u95f4\u79d2\u6570\u4e4b\u540e\u5230\u671f\/\u8fc7\u671f\u3002<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td><a title=\"EXPIREAT key timestamp\" href=\"http:\/\/www.yiibai.com\/redis\/keys_expireat.html\" target=\"_blank\" rel=\"noopener\">EXPIREAT key timestamp<\/a><\/td>\n<td>\u8bbe\u7f6e\u5728\u6307\u5b9a\u65f6\u95f4\u6233\u4e4b\u540e\u952e\u5230\u671f\/\u8fc7\u671f\u3002\u8fd9\u91cc\u7684\u65f6\u95f4\u662fUnix\u65f6\u95f4\u6233\u683c\u5f0f\u3002<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td><a title=\"PEXPIRE key milliseconds\" href=\"http:\/\/www.yiibai.com\/redis\/keys_pexpire.html\" target=\"_blank\" rel=\"noopener\">PEXPIRE key milliseconds<\/a><\/td>\n<td>\u8bbe\u7f6e\u952e\u7684\u5230\u671f\u65f6\u95f4(\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)\u3002<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td><a title=\"PEXPIREAT key milliseconds-timestamp\" href=\"http:\/\/www.yiibai.com\/redis\/keys_pexpireat.html\" target=\"_blank\" rel=\"noopener\">PEXPIREAT key milliseconds-timestamp<\/a><\/td>\n<td>\u4ee5Unix\u65f6\u95f4\u6233\u5f62\u5f0f\u6765\u8bbe\u7f6e\u952e\u7684\u5230\u671f\u65f6\u95f4(\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)\u3002<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td><a title=\"KEYS pattern\" href=\"http:\/\/www.yiibai.com\/redis\/keys_keys.html\" target=\"_blank\" rel=\"noopener\">KEYS pattern<\/a><\/td>\n<td>\u67e5\u627e\u4e0e\u6307\u5b9a\u6a21\u5f0f\u5339\u914d\u7684\u6240\u6709\u952e\u3002<\/td>\n<\/tr>\n<tr>\n<td>9<\/td>\n<td><a title=\"MOVE key db\" href=\"http:\/\/www.yiibai.com\/redis\/keys_move.html\" target=\"_blank\" rel=\"noopener\">MOVE key db<\/a><\/td>\n<td>\u5c06\u952e\u79fb\u52a8\u5230\u53e6\u4e00\u4e2a\u6570\u636e\u5e93\u3002<\/td>\n<\/tr>\n<tr>\n<td>10<\/td>\n<td><a title=\"PERSIST key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_persist.html\" target=\"_blank\" rel=\"noopener\">PERSIST key<\/a><\/td>\n<td>\u5220\u9664\u6307\u5b9a\u952e\u7684\u8fc7\u671f\u65f6\u95f4\uff0c\u5f97\u6c38\u751f\u3002<\/td>\n<\/tr>\n<tr>\n<td>11<\/td>\n<td><a title=\"PTTL key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_pttl.html\" target=\"_blank\" rel=\"noopener\">PTTL key<\/a><\/td>\n<td>\u83b7\u53d6\u952e\u7684\u5269\u4f59\u5230\u671f\u65f6\u95f4\u3002<\/td>\n<\/tr>\n<tr>\n<td>12<\/td>\n<td><a title=\"RANDOMKEY\" href=\"http:\/\/www.yiibai.com\/redis\/keys_randomkey.html\" target=\"_blank\" rel=\"noopener\">RANDOMKEY<\/a><\/td>\n<td>\u4eceRedis\u8fd4\u56de\u4e00\u4e2a\u968f\u673a\u7684\u952e\u3002<\/td>\n<\/tr>\n<tr>\n<td>13<\/td>\n<td><a title=\"RENAME key newkey\" href=\"http:\/\/www.yiibai.com\/redis\/keys_rename.html\" target=\"_blank\" rel=\"noopener\">RENAME key newkey<\/a><\/td>\n<td>\u66f4\u6539\u952e\u7684\u540d\u79f0\u3002<\/td>\n<\/tr>\n<tr>\n<td>14<\/td>\n<td><a title=\"PTTL key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_pttl.html\" target=\"_blank\" rel=\"noopener\">PTTL key<\/a><\/td>\n<td>\u83b7\u53d6\u952e\u5230\u671f\u7684\u5269\u4f59\u65f6\u95f4(\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)\u3002<\/td>\n<\/tr>\n<tr>\n<td>15<\/td>\n<td><a title=\"RENAMENX key newkey\" href=\"http:\/\/www.yiibai.com\/redis\/keys_renamenx.html\" target=\"_blank\" rel=\"noopener\">RENAMENX key newkey<\/a><\/td>\n<td>\u5982\u679c\u65b0\u952e\u4e0d\u5b58\u5728\uff0c\u91cd\u547d\u540d\u952e\u3002<\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td><a title=\"TYPE key\" href=\"http:\/\/www.yiibai.com\/redis\/keys_type.html\" target=\"_blank\" rel=\"noopener\">TYPE key<\/a><\/td>\n<td>\u8fd4\u56de\u5b58\u50a8\u5728\u952e\u4e2d\u7684\u503c\u7684\u6570\u636e\u7c7b\u578b\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"h2-6-redis-\"><a class=\"reference-link\" name=\"6. Redis\u5b57\u7b26\u4e32\"><\/a>6. Redis\u5b57\u7b26\u4e32<\/h2>\n<p>Redis\u5b57\u7b26\u4e32\u547d\u4ee4\u7528\u4e8e\u7ba1\u7406Redis\u4e2d\u7684\u5b57\u7b26\u4e32\u503c\u3002\u4ee5\u4e0b\u662f\u4f7f\u7528Redis\u5b57\u7b26\u4e32\u547d\u4ee4\u7684\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; COMMAND KEY_NAME\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p><strong>\u793a\u4f8b<\/strong><\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; SET mykey \"redis\" \r\nOK \r\nredis 127.0.0.1:6379&gt; GET mykey \r\n\"redis\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u4f8b\u5b50\u4e2d\uff0c<code>SET<\/code>\u548c<code>GET<\/code>\u662fredis\u4e2d\u7684\u547d\u4ee4\uff0c\u800c<code>mykey<\/code>\u662f\u952e\u7684\u540d\u79f0\u3002<\/p>\n<h2 id=\"h2-redis-\"><a class=\"reference-link\" name=\"Redis\u5b57\u7b26\u4e32\u547d\u4ee4\"><\/a>Redis\u5b57\u7b26\u4e32\u547d\u4ee4<\/h2>\n<p>\u4e0b\u8868\u5217\u51fa\u4e86\u4e00\u4e9b\u7528\u4e8e\u5728<strong>Redis<\/strong>\u4e2d\u7ba1\u7406\u5b57\u7b26\u4e32\u7684\u57fa\u672c\u547d\u4ee4\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u7f16\u53f7<\/th>\n<th>\u547d\u4ee4<\/th>\n<th>\u63cf\u8ff0\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td><a title=\"SET key value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_set.html\" target=\"_blank\" rel=\"noopener\">SET key value<\/a><\/td>\n<td>\u6b64\u547d\u4ee4\u8bbe\u7f6e\u6307\u5b9a\u952e\u7684\u503c\u3002<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td><a title=\"GET key\" href=\"http:\/\/www.yiibai.com\/redis\/strings_get.html\" target=\"_blank\" rel=\"noopener\">GET key<\/a><\/td>\n<td>\u83b7\u53d6\u6307\u5b9a\u952e\u7684\u503c\u3002<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td><a title=\"GETRANGE key start end\" href=\"http:\/\/www.yiibai.com\/redis\/strings_getrange.html\" target=\"_blank\" rel=\"noopener\">GETRANGE key start end<\/a><\/td>\n<td>\u83b7\u53d6\u5b58\u50a8\u5728\u952e\u4e0a\u7684\u5b57\u7b26\u4e32\u7684\u5b50\u5b57\u7b26\u4e32\u3002<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td><a title=\"GETSET key value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_getset.html\" target=\"_blank\" rel=\"noopener\">GETSET key value<\/a><\/td>\n<td>\u8bbe\u7f6e\u952e\u7684\u5b57\u7b26\u4e32\u503c\u5e76\u8fd4\u56de\u5176\u65e7\u503c\u3002<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td><a title=\"GETBIT key offset\" href=\"http:\/\/www.yiibai.com\/redis\/strings_getbit.html\" target=\"_blank\" rel=\"noopener\">GETBIT key offset<\/a><\/td>\n<td>\u8fd4\u56de\u5728\u952e\u5904\u5b58\u50a8\u7684\u5b57\u7b26\u4e32\u503c\u4e2d\u504f\u79fb\u5904\u7684\u4f4d\u503c\u3002<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td><a title=\"MGET key1 [key2..]\" href=\"http:\/\/www.yiibai.com\/redis\/strings_mget.html\" target=\"_blank\" rel=\"noopener\">MGET key1 [key2..]<\/a><\/td>\n<td>\u83b7\u53d6\u6240\u6709\u7ed9\u5b9a\u952e\u7684\u503c<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td><a title=\"SETBIT key offset value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_setbit.html\" target=\"_blank\" rel=\"noopener\">SETBIT key offset value<\/a><\/td>\n<td>\u5b58\u50a8\u5728\u952e\u4e0a\u7684\u5b57\u7b26\u4e32\u503c\u4e2d\u8bbe\u7f6e\u6216\u6e05\u9664\u504f\u79fb\u5904\u7684\u4f4d<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td><a title=\"SETEX key seconds value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_setex.html\" target=\"_blank\" rel=\"noopener\">SETEX key seconds value<\/a><\/td>\n<td>\u4f7f\u7528\u952e\u548c\u5230\u671f\u65f6\u95f4\u6765\u8bbe\u7f6e\u503c<\/td>\n<\/tr>\n<tr>\n<td>9<\/td>\n<td><a title=\"SETNX key value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_setnx.html\" target=\"_blank\" rel=\"noopener\">SETNX key value<\/a><\/td>\n<td>\u8bbe\u7f6e\u952e\u7684\u503c\uff0c\u4ec5\u5f53\u952e\u4e0d\u5b58\u5728\u65f6<\/td>\n<\/tr>\n<tr>\n<td>10<\/td>\n<td><a title=\"SETRANGE key offset value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_setrange.html\" target=\"_blank\" rel=\"noopener\">SETRANGE key offset value<\/a><\/td>\n<td>\u5728\u6307\u5b9a\u504f\u79fb\u5904\u5f00\u59cb\u7684\u952e\u5904\u8986\u76d6\u5b57\u7b26\u4e32\u7684\u4e00\u90e8\u5206<\/td>\n<\/tr>\n<tr>\n<td>11<\/td>\n<td><a title=\"STRLEN key\" href=\"http:\/\/www.yiibai.com\/redis\/strings_strlen.html\" target=\"_blank\" rel=\"noopener\">STRLEN key<\/a><\/td>\n<td>\u83b7\u53d6\u5b58\u50a8\u5728\u952e\u4e2d\u7684\u503c\u7684\u957f\u5ea6<\/td>\n<\/tr>\n<tr>\n<td>12<\/td>\n<td><a title=\"MSET key value [key value ...]\" href=\"http:\/\/www.yiibai.com\/redis\/strings_mset.html\" target=\"_blank\" rel=\"noopener\">MSET key value [key value \u2026]<\/a><\/td>\n<td>\u4e3a\u591a\u4e2a\u952e\u5206\u522b\u8bbe\u7f6e\u5b83\u4eec\u7684\u503c<\/td>\n<\/tr>\n<tr>\n<td>13<\/td>\n<td><a title=\"MSETNX key value [key value ...]\" href=\"http:\/\/www.yiibai.com\/redis\/strings_msetnx.html\" target=\"_blank\" rel=\"noopener\">MSETNX key value [key value \u2026]<\/a><\/td>\n<td>\u4e3a\u591a\u4e2a\u952e\u5206\u522b\u8bbe\u7f6e\u5b83\u4eec\u7684\u503c\uff0c\u4ec5\u5f53\u952e\u4e0d\u5b58\u5728\u65f6<\/td>\n<\/tr>\n<tr>\n<td>14<\/td>\n<td><a title=\"PSETEX key milliseconds value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_psetex.html\" target=\"_blank\" rel=\"noopener\">PSETEX key milliseconds value<\/a><\/td>\n<td>\u8bbe\u7f6e\u952e\u7684\u503c\u548c\u5230\u671f\u65f6\u95f4(\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)<\/td>\n<\/tr>\n<tr>\n<td>15<\/td>\n<td><a title=\"INCR key\" href=\"http:\/\/www.yiibai.com\/redis\/strings_incr.html\" target=\"_blank\" rel=\"noopener\">INCR key<\/a><\/td>\n<td>\u5c06\u952e\u7684\u6574\u6570\u503c\u589e\u52a0<code>1<\/code><\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td><a title=\"INCRBY key increment\" href=\"http:\/\/www.yiibai.com\/redis\/strings_incrby.html\" target=\"_blank\" rel=\"noopener\">INCRBY key increment<\/a><\/td>\n<td>\u5c06\u952e\u7684\u6574\u6570\u503c\u6309\u7ed9\u5b9a\u7684\u6570\u503c\u589e\u52a0<\/td>\n<\/tr>\n<tr>\n<td>17<\/td>\n<td><a title=\"INCRBYFLOAT key increment\" href=\"http:\/\/www.yiibai.com\/redis\/strings_incrbyfloat.html\" target=\"_blank\" rel=\"noopener\">INCRBYFLOAT key increment<\/a><\/td>\n<td>\u5c06\u952e\u7684\u6d6e\u70b9\u503c\u6309\u7ed9\u5b9a\u7684\u6570\u503c\u589e\u52a0<\/td>\n<\/tr>\n<tr>\n<td>18<\/td>\n<td><a title=\"DECR key\" href=\"http:\/\/www.yiibai.com\/redis\/strings_decr.html\" target=\"_blank\" rel=\"noopener\">DECR key<\/a><\/td>\n<td>\u5c06\u952e\u7684\u6574\u6570\u503c\u51cf<code>1<\/code><\/td>\n<\/tr>\n<tr>\n<td>19<\/td>\n<td><a title=\"DECRBY key decrement\" href=\"http:\/\/www.yiibai.com\/redis\/strings_decrby.html\" target=\"_blank\" rel=\"noopener\">DECRBY key decrement<\/a><\/td>\n<td>\u6309\u7ed9\u5b9a\u6570\u503c\u51cf\u5c11\u952e\u7684\u6574\u6570\u503c<\/td>\n<\/tr>\n<tr>\n<td>20<\/td>\n<td><a title=\"APPEND key value\" href=\"http:\/\/www.yiibai.com\/redis\/strings_append.html\" target=\"_blank\" rel=\"noopener\">APPEND key value<\/a><\/td>\n<td>\u5c06\u6307\u5b9a\u503c\u9644\u52a0\u5230\u952e<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"h2-7-redis-\"><a class=\"reference-link\" name=\"7. Redis\u54c8\u5e0c\"><\/a>7. Redis\u54c8\u5e0c<\/h2>\n<p>Redis Hashes\u662f\u5b57\u7b26\u4e32\u5b57\u6bb5\u548c\u5b57\u7b26\u4e32\u503c\u4e4b\u95f4\u7684\u6620\u5c04(\u7c7b\u4f3c\u4e8ePHP\u4e2d\u7684\u6570\u7ec4\u7c7b\u578b)\u3002 \u56e0\u6b64\uff0c\u5b83\u4eec\u662f\u8868\u793a\u5bf9\u8c61\u7684\u5b8c\u7f8e\u6570\u636e\u7c7b\u578b\u3002<\/p>\n<p>\u5728Redis\u4e2d\uff0c\u6bcf\u4e2a\u54c8\u5e0c(\u6563\u5217)\u53ef\u4ee5\u5b58\u50a8\u591a\u8fbe4\u4ebf\u4e2a\u952e-\u503c\u5bf9\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; HMSET myhash name \"redis tutorial\" \r\ndescription \"redis basic commands for caching\" likes 20 visitors 23000 \r\nOK \r\n127.0.0.1:6379&gt; HGETALL myhash\r\n1) \"field1\"\r\n2) \"Hello\"\r\n3) \"field2\"\r\n4) \"World\"\r\n5) \"name\"\r\n6) \"redis tutorial\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u4f8b\u5b50\u4e2d\uff0c\u5728\u540d\u79f0\u4e3a\u2019<code>myhash<\/code>\u2018\u7684\u54c8\u5e0c\u4e2d\u8bbe\u7f6e\u4e86Redis\u6559\u7a0b\u7684\u8be6\u7ec6\u4fe1\u606f(\u540d\u79f0\uff0c\u63cf\u8ff0\uff0c\u559c\u6b22\uff0c\u8bbf\u95ee\u8005)\u3002<\/p>\n<h2 id=\"h2-8-redis-\"><a class=\"reference-link\" name=\"8. Redis\u5217\u8868\"><\/a>8. Redis\u5217\u8868<\/h2>\n<p>Redis\u5217\u8868\u53ea\u662f\u5b57\u7b26\u4e32\u5217\u8868\uff0c\u6309\u63d2\u5165\u987a\u5e8f\u6392\u5e8f\u3002\u53ef\u4ee5\u5728\u5217\u8868\u7684\u5934\u90e8\u6216\u5c3e\u90e8\u6dfb\u52a0Redis\u5217\u8868\u4e2d\u7684\u5143\u7d20\u3002<\/p>\n<p>\u5217\u8868\u7684\u6700\u5927\u957f\u5ea6\u4e3a<code>2^32 - 1<\/code>\u4e2a\u5143\u7d20(\u5373<code>4294967295<\/code>\uff0c\u6bcf\u4e2a\u5217\u8868\u53ef\u5b58\u50a8\u8d85\u8fc740\u4ebf\u4e2a\u5143\u7d20)\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; LPUSH mylist \"redis\" \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; LPUSH mylist \"mongodb\"\r\n(integer) 2 \r\nredis 127.0.0.1:6379&gt; LPUSH mylist \"mysql\"\r\n(integer) 3 \r\nredis 127.0.0.1:6379&gt; LRANGE mylist 0 10  \r\n1) \"mysql\" \r\n2) \"mongodb\" \r\n3) \"redis\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u793a\u4f8b\u4e2d\uff0c\u901a\u8fc7\u547d\u4ee4<code>LPUSH<\/code>\u5c06\u4e09\u4e2a\u503c\u63d2\u5165\u5230\u540d\u79f0\u4e3a\u201c<code>mylist<\/code>\u201d\u7684Redis\u5217\u8868\u4e2d\u3002<\/p>\n<h2 id=\"h2-8-redis-\"><a class=\"reference-link\" name=\"8. Redis\u96c6\u5408\"><\/a>8. Redis\u96c6\u5408<\/h2>\n<p>Redis\u96c6\u5408\u662f\u552f\u4e00\u5b57\u7b26\u4e32\u7684\u65e0\u5e8f\u96c6\u5408\u3002 \u552f\u4e00\u503c\u8868\u793a\u96c6\u5408\u4e2d\u4e0d\u5141\u8bb8\u952e\u4e2d\u6709\u91cd\u590d\u7684\u6570\u636e\u3002<\/p>\n<p>\u5728Redis\u4e2d\u8bbe\u7f6e\u6dfb\u52a0\uff0c\u5220\u9664\u548c\u6d4b\u8bd5\u6210\u5458\u7684\u5b58\u5728(\u6052\u5b9a\u65f6\u95f4O(1)\uff0c\u800c\u4e0d\u8003\u8651\u96c6\u5408\u4e2d\u5305\u542b\u7684\u5143\u7d20\u6570\u91cf)\u3002\u5217\u8868\u7684\u6700\u5927\u957f\u5ea6\u4e3a<code>2^32 - 1<\/code>\u4e2a\u5143\u7d20(\u53734294967295\uff0c\u6bcf\u7ec4\u96c6\u5408\u8d85\u8fc740\u4ebf\u4e2a\u5143\u7d20)\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; SADD myset \"redis\" \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; SADD myset \"mongodb\" \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; SADD myset \"mysql\" \r\n(integer) 1 \r\nredis 127.0.0.1:6379&gt; SADD myset \"mysql\" \r\n(integer) 0 \r\nredis 127.0.0.1:6379&gt; SMEMBERS \"myset\"  \r\n1) \"mysql\" \r\n2) \"mongodb\" \r\n3) \"redis\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u793a\u4f8b\u4e2d\uff0c\u901a\u8fc7\u547d\u4ee4<code>SADD<\/code>\u5c06\u4e09\u4e2a\u503c\u63d2\u5165\u5230\u540d\u79f0\u4e3a\u201c<code>myset<\/code>\u201d\u7684Redis\u96c6\u5408\u4e2d\u3002<\/p>\n<h2 id=\"h2-9-redis-\"><a class=\"reference-link\" name=\"9. Redis\u53d1\u9001\u8ba2\u9605\"><\/a>9. Redis\u53d1\u9001\u8ba2\u9605<\/h2>\n<p>Redis\u53d1\u5e03\u8ba2\u9605(pub\/sub)\u662f\u4e00\u79cd\u6d88\u606f\u901a\u4fe1\u6a21\u5f0f\uff1a\u53d1\u9001\u8005(pub)\u53d1\u9001\u6d88\u606f\uff0c\u8ba2\u9605\u8005(sub)\u63a5\u6536\u6d88\u606f\u3002<br \/>\nRedis \u53d1\u5e03\u8ba2\u9605(pub\/sub)\u5b9e\u73b0\u4e86\u6d88\u606f\u7cfb\u7edf\uff0c\u53d1\u9001\u8005(\u5728redis\u672f\u8bed\u4e2d\u79f0\u4e3a\u53d1\u5e03\u8005)\u5728\u63a5\u6536\u8005(\u8ba2\u9605\u8005)\u63a5\u6536\u6d88\u606f\u65f6\u53d1\u9001\u6d88\u606f\u3002\u4f20\u9001\u6d88\u606f\u7684\u94fe\u8def\u79f0\u4e3a\u4fe1\u9053\u3002<\/p>\n<p>\u5728Redis\u4e2d\uff0c\u5ba2\u6237\u7aef\u53ef\u4ee5\u8ba2\u9605\u4efb\u610f\u6570\u91cf\u7684\u4fe1\u9053\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u4e86\u53d1\u5e03\u7528\u6237\u6982\u5ff5\u7684\u5de5\u4f5c\u539f\u7406\u3002 \u5728\u4ee5\u4e0b\u793a\u4f8b\u4e2d\uff0c\u4e00\u4e2a\u5ba2\u6237\u7aef\u8ba2\u9605\u540d\u4e3a\u201c<code>redisChat<\/code>\u201d\u7684\u4fe1\u9053\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; SUBSCRIBE redisChat  \r\nReading messages... (press Ctrl-C to quit) \r\n1) \"subscribe\" \r\n2) \"redisChat\" \r\n3) (integer) 1\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u73b0\u5728\uff0c\u4e24\u4e2a\u5ba2\u6237\u7aef\u5728\u540d\u79f0\u4e3a\u201c<code>redisChat<\/code>\u201d\u7684\u76f8\u540c\u4fe1\u9053\u4e0a\u53d1\u5e03\u6d88\u606f\uff0c\u5e76\u4e14\u4e0a\u8ff0\u8ba2\u9605\u7684\u5ba2\u6237\u7aef\u63a5\u6536\u6d88\u606f\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; PUBLISH redisChat \"Redis is a great caching technique\"  \r\n(integer) 1  \r\nredis 127.0.0.1:6379&gt; PUBLISH redisChat \"Learn redis by yiibai\"  \r\n(integer) 1   \r\n1) \"message\" \r\n2) \"redisChat\" \r\n3) \"Redis is a great caching technique\" \r\n1) \"message\" \r\n2) \"redisChat\" \r\n3) \"Learn redis by yiibai\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-10-redis-\"><a class=\"reference-link\" name=\"10. Redis\u4e8b\u52a1\"><\/a>10. Redis\u4e8b\u52a1<\/h2>\n<p>Redis\u4e8b\u52a1\u5141\u8bb8\u5728\u5355\u4e2a\u6b65\u9aa4\u4e2d\u6267\u884c\u4e00\u7ec4\u547d\u4ee4\u3002\u4ee5\u4e0b\u662f\u4e8b\u52a1\u7684\u4e24\u4e2a\u5c5e\u6027\uff1a<\/p>\n<ul>\n<li>\u4e8b\u52a1\u4e2d\u7684\u6240\u6709\u547d\u4ee4\u4f5c\u4e3a\u5355\u4e2a\u9694\u79bb\u64cd\u4f5c\u5e76\u6309\u987a\u5e8f\u6267\u884c\u3002\u4e0d\u53ef\u4ee5\u5728\u6267\u884cRedis\u4e8b\u52a1\u7684\u4e2d\u95f4\u5411\u53e6\u4e00\u4e2a\u5ba2\u6237\u7aef\u53d1\u51fa\u7684\u8bf7\u6c42\u3002<\/li>\n<li>Redis\u4e8b\u52a1\u4e5f\u662f\u539f\u5b50\u7684\u3002\u539f\u5b50\u610f\u5473\u7740\u8981\u4e48\u5904\u7406\u6240\u6709\u547d\u4ee4\uff0c\u8981\u4e48\u90fd\u4e0d\u5904\u7406\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-u8BEDu6CD5u793Au4F8B\"><a class=\"reference-link\" name=\"\u8bed\u6cd5\u793a\u4f8b\"><\/a>\u8bed\u6cd5\u793a\u4f8b<\/h2>\n<p>Redis\u4e8b\u52a1\u7531\u547d\u4ee4<code>MULTI<\/code>\u547d\u4ee4\u542f\u52a8\uff0c\u7136\u540e\u9700\u8981\u4f20\u9012\u4e00\u4e2a\u5e94\u8be5\u5728\u4e8b\u52a1\u4e2d\u6267\u884c\u7684\u547d\u4ee4\u5217\u8868\uff0c\u7136\u540e\u6574\u4e2a\u4e8b\u52a1\u7531<code>EXEC<\/code>\u547d\u4ee4\u6267\u884c\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; MULTI \r\nOK \r\nList of commands here \r\nredis 127.0.0.1:6379&gt; EXEC\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u4e86\u5982\u4f55\u542f\u52a8\u548c\u6267\u884cRedis\u4e8b\u52a1\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; MULTI \r\nOK \r\nredis 127.0.0.1:6379&gt; SET mykey \"redis\" \r\nQUEUED \r\nredis 127.0.0.1:6379&gt; GET mykey \r\nQUEUED \r\nredis 127.0.0.1:6379&gt; INCR visitors \r\nQUEUED \r\nredis 127.0.0.1:6379&gt; EXEC  \r\n1) OK \r\n2) \"redis\" \r\n3) (integer) 1\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-11-redis-\"><a class=\"reference-link\" name=\"11. Redis\u811a\u672c\"><\/a>11. Redis\u811a\u672c<\/h2>\n<p>Redis\u811a\u672c\u7528\u4e8e\u4f7f\u7528Lua\u89e3\u91ca\u5668\u6765\u6267\u884c\u811a\u672c\u3002\u4ece<code>Redis 2.6.0<\/code>\u7248\u5f00\u59cb\u5185\u7f6e\u5230Redis\u4e2d\u3002\u4f7f\u7528\u811a\u672c\u7684\u547d\u4ee4\u662f<strong>EVAL<\/strong>\u547d\u4ee4\u3002<\/p>\n<h2 id=\"h2-u8BEDu6CD5\"><a class=\"reference-link\" name=\"\u8bed\u6cd5\"><\/a>\u8bed\u6cd5<\/h2>\n<p>\u4ee5\u4e0b\u662f<code>EVAL<\/code>\u547d\u4ee4\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; EVAL script numkeys key [key ...] arg [arg ...]\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u4e86Redis\u811a\u672c\u7684\u5de5\u4f5c\u539f\u7406\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; EVAL \"return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}\" 2 key1 \r\nkey2 first second  \r\n1) \"key1\" \r\n2) \"key2\" \r\n3) \"first\" \r\n4) \"second\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-12-redis-\"><a class=\"reference-link\" name=\"12.     Redis\u8fde\u63a5\"><\/a>12. Redis\u8fde\u63a5<\/h2>\n<p>Redis\u4e2d\u7684\u8fde\u63a5\u547d\u4ee4\u57fa\u672c\u4e0a\u662f\u7528\u4e8e\u7ba1\u7406\u4e0eRedis\u670d\u52a1\u5668\u7684\u5ba2\u6237\u7aef\u8fde\u63a5\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u5ba2\u6237\u7aef\u5982\u4f55\u5411Redis\u670d\u52a1\u5668\u9a8c\u8bc1\u81ea\u8eab\uff0c\u5e76\u68c0\u67e5\u670d\u52a1\u5668\u662f\u5426\u6b63\u5728\u8fd0\u884c\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">redis 127.0.0.1:6379&gt; AUTH \"password\" \r\nOK \r\nredis 127.0.0.1:6379&gt; PING \r\nPONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-redis-\"><a class=\"reference-link\" name=\"Redis\u8fde\u63a5\u547d\u4ee4\"><\/a>Redis\u8fde\u63a5\u547d\u4ee4<\/h2>\n<p>\u4e0b\u8868\u5217\u51fa\u4e86\u4e0eRedis\u8fde\u63a5\u76f8\u5173\u7684\u4e00\u4e9b\u57fa\u672c\u547d\u4ee4\u3002<\/p>\n<table>\n<thead>\n<tr>\n<th>\u5e8f\u53f7<\/th>\n<th>\u547d\u4ee4<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td><a title=\"AUTH password\" href=\"http:\/\/www.yiibai.com\/redis\/connection_auth.html\" target=\"_blank\" rel=\"noopener\">AUTH password<\/a><\/td>\n<td>\u4f7f\u7528\u7ed9\u5b9a\u7684\u5bc6\u7801\u9a8c\u8bc1\u670d\u52a1\u5668<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td><a title=\"ECHO message\" href=\"http:\/\/www.yiibai.com\/redis\/connection_echo.html\" target=\"_blank\" rel=\"noopener\">ECHO message<\/a><\/td>\n<td>\u6253\u5370\u7ed9\u5b9a\u7684\u5b57\u7b26\u4e32\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td><a title=\"PING\" href=\"http:\/\/www.yiibai.com\/redis\/connection_ping.html\" target=\"_blank\" rel=\"noopener\">PING<\/a><\/td>\n<td>\u68c0\u67e5\u670d\u52a1\u5668\u662f\u5426\u6b63\u5728\u8fd0\u884c<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td><a title=\"QUIT\" href=\"http:\/\/www.yiibai.com\/redis\/connection_quit.html\" target=\"_blank\" rel=\"noopener\">QUIT<\/a><\/td>\n<td>\u5173\u95ed\u5f53\u524d\u8fde\u63a5<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td><a title=\"SELECT index\" href=\"http:\/\/www.yiibai.com\/redis\/connection_select.html\" target=\"_blank\" rel=\"noopener\">SELECT index<\/a><\/td>\n<td>\u66f4\u6539\u5f53\u524d\u8fde\u63a5\u7684\u6240\u9009\u6570\u636e\u5e93<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"h2-13-redis-\"><a class=\"reference-link\" name=\"13.     Redis\u670d\u52a1\u5668\"><\/a>13. Redis\u670d\u52a1\u5668<\/h2>\n<p>Redis\u670d\u52a1\u5668\u547d\u4ee4\u57fa\u672c\u4e0a\u662f\u7528\u4e8e\u7ba1\u7406Redis\u670d\u52a1\u5668\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u8bf4\u660e\u4e86\u5982\u4f55\u83b7\u53d6\u6709\u5173\u670d\u52a1\u5668\u7684\u6240\u6709\u7edf\u8ba1\u4fe1\u606f\u548c\u4fe1\u606f\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; info\r\n# Server\r\nredis_version:2.8.4\r\nredis_git_sha1:00000000\r\nredis_git_dirty:0\r\nredis_build_id:8f6097d7914679ca\r\nredis_mode:standalone\r\nos:Linux 3.19.0-25-generic i686\r\narch_bits:32\r\nmultiplexing_api:epoll\r\ngcc_version:4.8.2\r\nprocess_id:1004\r\nrun_id:1e53acea2aa628199c4e438a3ed815d96eebc036\r\ntcp_port:6379\r\nuptime_in_seconds:888450\r\nuptime_in_days:10\r\nhz:10\r\nlru_clock:1861984\r\nconfig_file:\/etc\/redis\/redis.conf\r\n\r\n# Clients\r\nconnected_clients:1\r\nclient_longest_output_list:0\r\nclient_biggest_input_buf:0\r\nblocked_clients:0\r\n\r\n# Memory\r\nused_memory:424872\r\nused_memory_human:414.91K\r\nused_memory_rss:6709248\r\nused_memory_peak:424464\r\nused_memory_peak_human:414.52K\r\nused_memory_lua:22528\r\nmem_fragmentation_ratio:15.79\r\nmem_allocator:jemalloc-3.4.1\r\n\r\n# Persistence\r\nloading:0\r\nrdb_changes_since_last_save:0\r\nrdb_bgsave_in_progress:0\r\nrdb_last_save_time:1486607123\r\nrdb_last_bgsave_status:ok\r\nrdb_last_bgsave_time_sec:0\r\nrdb_current_bgsave_time_sec:-1\r\naof_enabled:0\r\naof_rewrite_in_progress:0\r\naof_rewrite_scheduled:0\r\naof_last_rewrite_time_sec:-1\r\naof_current_rewrite_time_sec:-1\r\naof_last_bgrewrite_status:ok\r\n\r\n# Stats\r\ntotal_connections_received:1\r\ntotal_commands_processed:263\r\ninstantaneous_ops_per_sec:0\r\nrejected_connections:0\r\nsync_full:0\r\nsync_partial_ok:0\r\nsync_partial_err:0\r\nexpired_keys:0\r\nevicted_keys:0\r\nkeyspace_hits:257\r\nkeyspace_misses:0\r\npubsub_channels:0\r\npubsub_patterns:0\r\nlatest_fork_usec:4793\r\n\r\n# Replication\r\nrole:master\r\nconnected_slaves:0\r\nmaster_repl_offset:0\r\nrepl_backlog_active:0\r\nrepl_backlog_size:1048576\r\nrepl_backlog_first_byte_offset:0\r\nrepl_backlog_histlen:0\r\n\r\n# CPU\r\nused_cpu_sys:24.65\r\nused_cpu_user:15.84\r\nused_cpu_sys_children:0.08\r\nused_cpu_user_children:0.00\r\n\r\n# Keyspace\r\ndb0:keys=14,expires=0,avg_ttl=0\r\ndb1:keys=1,expires=0,avg_ttl=0\r\n127.0.0.1:6379&gt;\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-14-redis-\"><a class=\"reference-link\" name=\"14. Redis\u5907\u4efd\"><\/a>14. Redis\u5907\u4efd<\/h2>\n<p>Redis\u6570\u636e\u5e93\u53ef\u4ee5\u4f7f\u7528\u5b89\u5168\u7684\u65b9\u6848\uff0c\u4f7f\u5f97\u8fdb\u884c\u8fde\u63a5\u7684\u4efb\u4f55\u5ba2\u6237\u7aef\u5728\u6267\u884c\u547d\u4ee4\u4e4b\u524d\u90fd\u9700\u8981\u8fdb\u884c\u8eab\u4efd\u9a8c\u8bc1\u3002\u8981\u4fdd\u62a4Redis\u5b89\u5168\uff0c\u9700\u8981\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u8bbe\u7f6e\u5bc6\u7801\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u4e0b\u9762\u7684\u793a\u4f8b\u663e\u793a\u4e86\u4fdd\u62a4Redis\u5b9e\u4f8b\u7684\u6b65\u9aa4\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; CONFIG get requirepass \r\n1) \"requirepass\" \r\n2) \"\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6b64\u5c5e\u6027\u4e3a\u7a7a\uff0c\u8fd9\u8868\u793a\u8fd8\u6ca1\u6709\u4e3a\u6b64\u5b9e\u4f8b\u8bbe\u7f6e\u5bc6\u7801\u3002\u60a8\u53ef\u4ee5\u901a\u8fc7\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\u66f4\u6539\u6b64\u5c5e\u6027\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; CONFIG set requirepass \"yiibai\" \r\nOK \r\n127.0.0.1:6379&gt; CONFIG get requirepass \r\n1) \"requirepass\" \r\n2) \"yiibai\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u8bbe\u7f6e\u5bc6\u7801\u540e\uff0c\u5982\u679c\u4efb\u4f55\u5ba2\u6237\u7aef\u8fd0\u884c\u547d\u4ee4\u800c\u4e0d\u8fdb\u884c\u8eab\u4efd\u9a8c\u8bc1\uff0c\u5219\u4f1a\u8fd4\u56de\u4e00\u4e2a<strong>(error) NOAUTH Authentication required.<\/strong>\u7684\u9519\u8bef\u4fe1\u606f\u3002 \u56e0\u6b64\uff0c\u5ba2\u6237\u7aef\u9700\u8981\u4f7f\u7528AUTH\u547d\u4ee4\u6765\u9a8c\u8bc1\u3002<\/p>\n<h2 id=\"h2-u8BEDu6CD5\"><a class=\"reference-link\" name=\"\u8bed\u6cd5\"><\/a>\u8bed\u6cd5<\/h2>\n<p>\u4ee5\u4e0b\u662fAUTH\u547d\u4ee4\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; AUTH password\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; AUTH \"yiibai\" \r\nOK \r\n127.0.0.1:6379&gt; SET mykey \"Test value\" \r\nOK \r\n127.0.0.1:6379&gt; GET mykey \r\n\"Test value\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-15-redis-\"><a class=\"reference-link\" name=\"15. Redis\u5ba2\u6237\u7aef\u8fde\u63a5\"><\/a>15. Redis\u5ba2\u6237\u7aef\u8fde\u63a5<\/h2>\n<p>Redis\u5728\u914d\u7f6e\u7684\u76d1\u542cTCP\u7aef\u53e3\u548cUnix\u5957\u63a5\u5b57\u4e0a\u7b49\u5f85\u548c\u63a5\u53d7\u5ba2\u6237\u7aef\u7684\u8fde\u63a5(\u5982\u679c\u5df2\u542f\u7528)\u3002 \u5f53\u63a5\u53d7\u65b0\u7684\u5ba2\u6237\u7aef\u8fde\u63a5\u65f6\uff0c\u6267\u884c\u4ee5\u4e0b\u64cd\u4f5c &#8211;<\/p>\n<ul>\n<li>\u7531\u4e8eRedis\u4f7f\u7528\u590d\u7528\u548c\u975e\u963b\u585e<code>I\/O<\/code>\uff0c\u56e0\u6b64\u5ba2\u6237\u7aef\u5957\u63a5\u5b57\u5904\u4e8e\u975e\u963b\u585e\u72b6\u6001\u3002<\/li>\n<li>\u8bbe\u7f6e<code>TCP_NODELAY<\/code>\u9009\u9879\u662f\u4e3a\u4e86\u786e\u4fdd\u8fde\u63a5\u4e0d\u5ef6\u8fdf\u3002<\/li>\n<li>\u521b\u5efa\u53ef\u8bfb\u6587\u4ef6\u4e8b\u4ef6\uff0c\u4ee5\u4fbfRedis\u80fd\u591f\u5728\u5957\u63a5\u5b57\u4e0a\u8bfb\u53d6\u65b0\u6570\u636e\u65f6\u6536\u96c6\u5ba2\u6237\u7aef\u67e5\u8be2\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-u6700u5927u5BA2u6237u6570\"><a class=\"reference-link\" name=\"\u6700\u5927\u5ba2\u6237\u6570\"><\/a>\u6700\u5927\u5ba2\u6237\u6570<\/h2>\n<p>\u5728Redis\u914d\u7f6e\u6587\u4ef6(<code>redis.conf<\/code>)\u4e2d\uff0c\u6709\u4e00\u4e2a\u540d\u79f0\u4e3a<code>maxclients<\/code>\u7684\u5c5e\u6027\uff0c\u5b83\u63cf\u8ff0\u4e86\u53ef\u4ee5\u8fde\u63a5\u5230Redis\u7684\u5ba2\u6237\u7aef\u7684\u6700\u5927\u6570\u91cf\u3002<\/p>\n<p>\u4ee5\u4e0b\u662f\u547d\u4ee4\u7684\u57fa\u672c\u8bed\u6cd5\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">127.0.0.1:6379&gt; config get maxclients\r\n1) \"maxclients\"\r\n2) \"3984\"\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6b64\u5c5e\u6027\u8bbe\u7f6e\u4e3a<code>10000<\/code>(\u53d6\u51b3\u4e8e\u64cd\u4f5c\u7cfb\u7edf\u7684\u6587\u4ef6\u63cf\u8ff0\u7b26\u9650\u5236\u7684\u6700\u5927\u6570\u91cf)\uff0c\u4f46\u60a8\u53ef\u4ee5\u66f4\u6539\u6b64\u5c5e\u6027\u3002<\/p>\n<h2 id=\"h2-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h2>\n<p>\u5728\u4ee5\u4e0b\u793a\u4f8b\u4e2d\uff0c\u6211\u4eec\u5df2\u5c06\u5ba2\u6237\u7aef\u7684\u6700\u5927\u6570\u76ee\u8bbe\u7f6e\u4e3a<code>100000<\/code>\uff0c\u5e76\u542f\u52a8\u670d\u52a1\u5668\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">yiibai@ubuntu:~$ redis-server --maxclients 100000\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-u5BA2u6237u7AEFu547Du4EE4\"><a class=\"reference-link\" name=\"\u5ba2\u6237\u7aef\u547d\u4ee4\"><\/a>\u5ba2\u6237\u7aef\u547d\u4ee4<\/h2>\n<table>\n<thead>\n<tr>\n<th>\u7f16\u53f7<\/th>\n<th>\u547d\u4ee4<\/th>\n<th>\u63cf\u8ff0<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td>CLIENT LIST<\/td>\n<td>\u8fd4\u56de\u8fde\u63a5\u5230Redis\u670d\u52a1\u5668\u7684\u5ba2\u6237\u7aef\u5217\u8868<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>CLIENT SETNAME<\/td>\n<td>\u4e3a\u5f53\u524d\u8fde\u63a5\u5206\u914d\/\u8bbe\u7f6e\u65b0\u7684\u540d\u79f0<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>CLIENT GETNAME<\/td>\n<td>\u8fd4\u56de\u7531<code>CLIENT SETNAME<\/code>\u8bbe\u7f6e\u7684\u5f53\u524d\u8fde\u63a5\u7684\u540d\u79f0<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>CLIENT PAUSE<\/td>\n<td>\u8fd9\u662f\u4e00\u4e2a\u8fde\u63a5\u63a7\u5236\u547d\u4ee4\uff0c\u80fd\u591f\u5c06\u6240\u6709Redis\u5ba2\u6237\u7aef\u6309\u6307\u5b9a\u7684\u65f6\u95f4\u91cf(\u4ee5\u6beb\u79d2\u4e3a\u5355\u4f4d)\u6302\u8d77<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>CLIENT KILL<\/td>\n<td>\u6b64\u547d\u4ee4\u5173\u95ed\u6307\u5b9a\u7684\u5ba2\u6237\u7aef\u8fde\u63a5\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\"h2-16-redis-\"><a class=\"reference-link\" name=\"16. Redis\u7ba1\u9053\"><\/a>16. Redis\u7ba1\u9053<\/h2>\n<p>Redis\u662f\u4e00\u4e2aTCP\u670d\u52a1\u5668\uff0c\u652f\u6301\u8bf7\u6c42\/\u54cd\u5e94\u534f\u8bae\u3002 \u5728Redis\u4e2d\uff0c\u8bf7\u6c42\u901a\u8fc7\u4ee5\u4e0b\u6b65\u9aa4\u5b8c\u6210\uff1a<\/p>\n<ul>\n<li>\u5ba2\u6237\u7aef\u5411\u670d\u52a1\u5668\u53d1\u9001\u67e5\u8be2\uff0c\u5e76\u4ece\u5957\u63a5\u5b57\u8bfb\u53d6\uff0c\u901a\u5e38\u4ee5\u963b\u585e\u7684\u65b9\u5f0f\uff0c\u7528\u4e8e\u670d\u52a1\u5668\u54cd\u5e94\u3002<\/li>\n<li>\u670d\u52a1\u5668\u5904\u7406\u547d\u4ee4\u5e76\u5c06\u54cd\u5e94\u53d1\u9001\u56de\u5ba2\u6237\u7aef\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-u7BA1u9053u7684u610Fu4E49\"><a class=\"reference-link\" name=\"\u7ba1\u9053\u7684\u610f\u4e49\"><\/a>\u7ba1\u9053\u7684\u610f\u4e49<\/h2>\n<p>\u7ba1\u9053\u7684\u57fa\u672c\u542b\u4e49\u662f\uff0c\u5ba2\u6237\u7aef\u53ef\u4ee5\u5411\u670d\u52a1\u5668\u53d1\u9001\u591a\u4e2a\u8bf7\u6c42\uff0c\u800c\u4e0d\u5fc5\u7b49\u5f85\u56de\u590d\uff0c\u5e76\u6700\u7ec8\u5728\u4e00\u4e2a\u6b65\u9aa4\u4e2d\u8bfb\u53d6\u56de\u590d\u3002<\/p>\n<h3 id=\"h3-u793Au4F8B\"><a class=\"reference-link\" name=\"\u793a\u4f8b\"><\/a>\u793a\u4f8b<\/h3>\n<p>\u8981\u68c0\u67e5Redis\u7ba1\u9053\uff0c\u53ea\u9700\u542f\u52a8Redis\u5b9e\u4f8b\uff0c\u5e76\u5728\u7ec8\u7aef\u4e2d\u952e\u5165\u4ee5\u4e0b\u547d\u4ee4\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">$(echo -en \"PING\\r\\n SET tutorial redis\\r\\nGET tutorial\\r\\nINCR \r\nvisitor\\r\\nINCR visitor\\r\\nINCR visitor\\r\\n\"; sleep 10) | nc localhost 6379  \r\n+PONG \r\n+OK \r\nredis \r\n:1 \r\n:2 \r\n:3\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u5728\u4e0a\u9762\u7684\u4f8b\u5b50\u4e2d\uff0c\u6211\u4eec\u5c06\u4f7f\u7528PING\u547d\u4ee4\u68c0\u67e5Redis\u8fde\u63a5\u3002\u8fd9\u91cc\u8bbe\u7f6e\u4e86\u4e00\u4e2a\u540d\u79f0\u4e3a<code>tutorial<\/code>\u7684\u5b57\u7b26\u4e32\uff0c\u503c\u4e3a<code>redis<\/code>\u3002 \u7136\u540e\u5f97\u5230\u952e\u503c\uff0c\u5e76\u589e\u52a0\u00a0<code>visitor<\/code>\u00a0\u6570\u91cf\u4e09\u6b21\u3002 \u5728\u7ed3\u679c\u4e2d\uff0c\u6211\u4eec\u53ef\u4ee5\u770b\u5230\u6240\u6709\u547d\u4ee4\u90fd\u63d0\u4ea4\u5230Redis\u4e00\u6b21\uff0cRedis\u5728\u4e00\u4e2a\u6b65\u9aa4\u4e2d\u63d0\u4f9b\u6240\u6709\u547d\u4ee4\u7684\u8f93\u51fa\u3002<\/p>\n<h2 id=\"h2-u7BA1u9053u7684u597Du5904\"><a class=\"reference-link\" name=\"\u7ba1\u9053\u7684\u597d\u5904\"><\/a>\u7ba1\u9053\u7684\u597d\u5904<\/h2>\n<p>\u8fd9\u79cd\u6280\u672f\u7684\u597d\u5904\u662f\u5927\u5927\u63d0\u9ad8\u4e86\u534f\u8bae\u6027\u80fd\u3002\u901a\u8fc7\u7ba1\u9053\u4ece\u8fde\u63a5\u5230\u672c\u5730\u4e3b\u673a\u901f\u5ea6\u589e\u52a0\u4e94\u500d\uff0c\u56e0\u7279\u7f51\u8fde\u63a5\u7684\u81f3\u5c11\u5feb\u4e00\u767e\u500d\u3002<\/p>\n<h2 id=\"h2-17-redis-\"><a class=\"reference-link\" name=\"17. Redis\u5206\u533a\"><\/a>17. Redis\u5206\u533a<\/h2>\n<p>\u5206\u533a\u662f\u5c06\u6570\u636e\u62c6\u5206\u4e3a\u591a\u4e2aRedis\u5b9e\u4f8b\u7684\u8fc7\u7a0b\uff0c\u56e0\u6b64\u6bcf\u4e2a\u5b9e\u4f8b\u53ea\u5305\u542b\u4e00\u90e8\u5206\u952e\u3002<\/p>\n<h2 id=\"h2-u5206u533Au7684u4F18u70B9\"><a class=\"reference-link\" name=\"\u5206\u533a\u7684\u4f18\u70b9\"><\/a>\u5206\u533a\u7684\u4f18\u70b9<\/h2>\n<ul>\n<li>\u5b83\u5141\u8bb8\u66f4\u5927\u7684\u6570\u636e\u5e93\uff0c\u4f7f\u7528\u66f4\u591a\u8ba1\u7b97\u673a\u7684\u5185\u5b58\u603b\u548c\u3002\u5982\u679c\u6ca1\u6709\u5206\u533a\uff0c\u5219\u9650\u5236\u4e3a\u5355\u4e2a\u8ba1\u7b97\u673a\u53ef\u4ee5\u652f\u6301\u7684\u5185\u5b58\u91cf\u3002<\/li>\n<li>\u5b83\u5141\u8bb8\u5c06\u8ba1\u7b97\u80fd\u529b\u6269\u5c55\u5230\u591a\u4e2a\u6838\u5fc3\u548c\u591a\u4e2a\u8ba1\u7b97\u673a\uff0c\u5e76\u5c06\u7f51\u7edc\u5e26\u5bbd\u6269\u5c55\u5230\u591a\u4e2a\u8ba1\u7b97\u673a\u548c\u7f51\u7edc\u9002\u914d\u5668\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-u5206u533Au7684u7F3Au70B9\"><a class=\"reference-link\" name=\"\u5206\u533a\u7684\u7f3a\u70b9\"><\/a>\u5206\u533a\u7684\u7f3a\u70b9<\/h2>\n<ul>\n<li>\u901a\u5e38\u4e0d\u652f\u6301\u6d89\u53ca\u591a\u4e2a\u952e\u7684\u64cd\u4f5c\u3002 \u4f8b\u5982\uff0c\u5982\u679c\u4e24\u4e2a\u96c6\u5408\u5b58\u50a8\u5728\u6620\u5c04\u5230\u4e0d\u540cRedis\u5b9e\u4f8b\u7684\u952e\u4e2d\uff0c\u5219\u4e0d\u80fd\u6267\u884c\u4e24\u4e2a\u96c6\u5408\u4e4b\u95f4\u7684\u4ea4\u96c6\u64cd\u4f5c\u3002<\/li>\n<li>\u4e0d\u80fd\u4f7f\u7528\u6d89\u53ca\u591a\u4e2a\u952e\u7684Redis\u4e8b\u52a1\u3002<\/li>\n<li>\u5206\u533a\u7c92\u5ea6\u662f\u5173\u952e\uff0c\u56e0\u6b64\u4e0d\u53ef\u80fd\u4f7f\u7528\u5355\u4e2a\u5de8\u5927\u7684\u952e(\u5982\u975e\u5e38\u5927\u7684\u6392\u5e8f\u96c6\u5408)\u6765\u5206\u5272\u6570\u636e\u96c6\u3002<\/li>\n<li>\u4f7f\u7528\u5206\u533a\u65f6\uff0c\u6570\u636e\u5904\u7406\u66f4\u590d\u6742\u3002 \u4f8b\u5982\uff0c\u5fc5\u987b\u5904\u7406\u591a\u4e2a<strong>RDB\/AOF<\/strong>\u6587\u4ef6\uff0c\u5e76\u83b7\u5f97\u6570\u636e\u7684\u5907\u4efd\uff0c\u60a8\u9700\u8981\u805a\u5408\u6765\u81ea\u591a\u4e2a\u5b9e\u4f8b\u548c\u4e3b\u673a\u7684\u6301\u4e45\u6027\u6587\u4ef6\u3002<\/li>\n<li>\u6dfb\u52a0\u548c\u5220\u9664\u5bb9\u91cf\u53ef\u80fd\u5f88\u590d\u6742\u3002 \u4f8b\u5982\uff0cRedis Cluster\u652f\u6301\u5927\u591a\u6570\u900f\u660e\u7684\u6570\u636e\u91cd\u65b0\u5e73\u8861\uff0c\u5177\u6709\u5728\u8fd0\u884c\u65f6\u6dfb\u52a0\u548c\u5220\u9664\u8282\u70b9\u7684\u80fd\u529b\u3002\u4f46\u662f\uff0c\u5176\u4ed6\u7cfb\u7edf(\u5982\u5ba2\u6237\u7aef\u5206\u533a\u548c\u4ee3\u7406)\u4e0d\u652f\u6301\u6b64\u529f\u80fd\u3002\u4f46\u53ef\u4ee5\u4f7f\u7528\u4e00\u79cd\u53eb\u4f5c<strong>Presharding<\/strong>\u7684\u6280\u672f\u6765\u5904\u7406\u8fd9\u65b9\u9762\u7684\u95ee\u9898\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-u5206u533Au7C7Bu578B\"><a class=\"reference-link\" name=\"\u5206\u533a\u7c7b\u578b\"><\/a>\u5206\u533a\u7c7b\u578b<\/h2>\n<p>Redis\u4e2d\u6709\u4e24\u79cd\u7c7b\u578b\u7684\u5206\u533a\u3002\u5047\u8bbe\u6709\u56db\u4e2aRedis\u5b9e\u4f8b\uff1a<code>R0<\/code>\uff0c<code>R1<\/code>\uff0c<code>R2<\/code>\uff0c<code>R3<\/code>\u4ee5\u8bb8\u591a\u4ee3\u8868\u7528\u6237\u7684\u952e\uff0c\u5982<code>user\uff1a1<\/code>\uff0c<code>user\uff1a2<\/code>\uff0c\u2026\u7b49\u7b49\u3002<\/p>\n<h3 id=\"h3-u8303u56F4u5206u533A\"><a class=\"reference-link\" name=\"\u8303\u56f4\u5206\u533a\"><\/a>\u8303\u56f4\u5206\u533a<\/h3>\n<p>\u8303\u56f4\u5206\u533a\u901a\u8fc7\u5c06\u5bf9\u8c61\u7684\u8303\u56f4\u6620\u5c04\u5230\u7279\u5b9a\u7684Redis\u5b9e\u4f8b\u6765\u5b9e\u73b0\u3002\u5047\u8bbe\u5728\u4e0a\u9762\u793a\u4f8b\u4e2d\uff0c\u4eceID 0\u5230ID 10000\u7684\u7528\u6237\u5c06\u8fdb\u5165\u5b9e\u4f8b<code>R0<\/code>\uff0c\u800c\u4eceID 10001\u5230ID 20000\u7684\u7528\u6237\u5c06\u8fdb\u5165\u5b9e\u4f8b<code>R1<\/code>\uff0c\u4ee5\u6b64\u7c7b\u63a8\u3002<\/p>\n<h3 id=\"h3-u54C8u5E0Cu5206u533A\"><a class=\"reference-link\" name=\"\u54c8\u5e0c\u5206\u533a\"><\/a>\u54c8\u5e0c\u5206\u533a<\/h3>\n<p>\u5728\u8fd9\u79cd\u7c7b\u578b\u7684\u5206\u533a\u4e2d\uff0c\u4f7f\u7528\u6563\u5217\u51fd\u6570(\u4f8b\u5982\uff0c\u6a21\u51fd\u6570)\u5c06\u952e\u8f6c\u6362\u6210\u6570\u5b57\uff0c\u7136\u540e\u5c06\u6570\u636e\u5b58\u50a8\u5728\u4e0d\u540c\u7684Redis\u5b9e\u4f8b\u4e2d\u3002<\/p>\n<h2 id=\"h2-18-java-redis\"><a class=\"reference-link\" name=\"18.     Java\u8fde\u63a5Redis\"><\/a>18. Java\u8fde\u63a5Redis<\/h2>\n<p>\u5728Java\u7a0b\u5e8f\u4e2d\u4f7f\u7528Redis\u4e4b\u524d\uff0c\u9700\u8981\u786e\u4fdd\u5728\u673a\u5668\u4e0a\u5b89\u88c5\u4e86Redis\u7684Java\u9a71\u52a8\u7a0b\u5e8f\u548cJava\u73af\u5883\u3002\u53ef\u4ee5\u5148\u5728\u5c06Java\u7535\u8111\u4e0a\u5e76\u914d\u7f6e\u597d\u73af\u5883\u3002<\/p>\n<h2 id=\"h2-u5B89u88C5\"><a class=\"reference-link\" name=\"\u5b89\u88c5\"><\/a>\u5b89\u88c5<\/h2>\n<p>\u73b0\u5728\uff0c\u8ba9\u6211\u4eec\u770b\u770b\u5982\u4f55\u8bbe\u7f6eRedis Java\u9a71\u52a8\u7a0b\u5e8f\u3002<\/p>\n<ul>\n<li>\u4e0b\u8f7d<code>jedis.jar<\/code>\u00a0&#8211;\u00a0<a href=\"http:\/\/repo1.maven.org\/maven2\/redis\/clients\/jedis\/2.1.0\/jedis-2.1.0-sources.jar\" target=\"_blank\" rel=\"noopener\">http:\/\/repo1.maven.org\/maven2\/redis\/clients\/jedis\/2.1.0\/jedis-2.1.0-sources.jar<\/a>\uff0c\u786e\u4fdd\u4e0b\u8f7d\u7684<code>jedis.jar<\/code>\u662f\u6700\u65b0\u7248\u672c\u3002<\/li>\n<li>\u5c06<code>jedis.jar<\/code>\u5305\u542b\u5230\u7c7b\u8def\u5f84\u4e2d\u3002<\/li>\n<\/ul>\n<h2 id=\"h2-java-redis-\"><a class=\"reference-link\" name=\"Java\u8fde\u63a5\u5230Redis\u670d\u52a1\u5668\"><\/a>Java\u8fde\u63a5\u5230Redis\u670d\u52a1\u5668<\/h2>\n<p>\u8bf7\u53c2\u8003\u4ee5\u4e0b\u4e00\u4e2a\u7b80\u5355\u7684\u793a\u4f8b\u4ee3\u7801 &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\"><span class=\"token keyword\">import<\/span> redis<span class=\"token punctuation\">.<\/span>clients<span class=\"token punctuation\">.<\/span>jedis<span class=\"token punctuation\">.<\/span>Jedis<span class=\"token punctuation\">;<\/span> \r\n\r\n<span class=\"token keyword\">public<\/span> <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">RedisJava<\/span> <span class=\"token punctuation\">{<\/span> \r\n   <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">main<\/span><span class=\"token punctuation\">(<\/span>String<span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> args<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n      <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n      Jedis jedis <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Jedis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"localhost\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token comment\">\/\/check whether server is running or not <\/span>\r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Server is running: \"<\/span><span class=\"token operator\">+<\/span>jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">ping<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token punctuation\">}<\/span> \r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<p>\u73b0\u5728\uff0c\u7f16\u8bd1\u5e76\u8fd0\u884c\u4e0a\u9762\u7684\u7a0b\u5e8f\u6765\u6d4b\u8bd5\u4e0eRedis\u670d\u52a1\u5668\u7684\u8fde\u63a5\u3002\u53ef\u4ee5\u6839\u636e\u9700\u8981\u66f4\u6539\u8def\u5f84\u3002\u5047\u8bbe<code>jedis.jar<\/code>\u7684\u5f53\u524d\u7248\u672c\u5728\u5f53\u524d\u8def\u5f84\u4e2d\u53ef\u4ee5\u4f7f\u7528\u3002<br \/>\n\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\">$javac RedisJava<span class=\"token punctuation\">.<\/span>java \r\n$java RedisJava \r\nConnection to server sucessfully \r\nServer is running<span class=\"token operator\">:<\/span> PONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<h3 id=\"h3-redis-java-\"><a class=\"reference-link\" name=\"Redis Java\u5b57\u7b26\u4e32\u793a\u4f8b\"><\/a>Redis Java\u5b57\u7b26\u4e32\u793a\u4f8b<\/h3>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\"><span class=\"token keyword\">import<\/span> redis<span class=\"token punctuation\">.<\/span>clients<span class=\"token punctuation\">.<\/span>jedis<span class=\"token punctuation\">.<\/span>Jedis<span class=\"token punctuation\">;<\/span> \r\n\r\n<span class=\"token keyword\">public<\/span> <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">RedisStringJava<\/span> <span class=\"token punctuation\">{<\/span> \r\n   <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">main<\/span><span class=\"token punctuation\">(<\/span>String<span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> args<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n      <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n      Jedis jedis <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Jedis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"localhost\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token comment\">\/\/set the data in redis string <\/span>\r\n      jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">set<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-name\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Redis tutorial\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token comment\">\/\/ Get the stored data and print it <\/span>\r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Stored string in redis:: \"<\/span><span class=\"token operator\">+<\/span> jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">get<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorialname\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token punctuation\">}<\/span> \r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\">$javac RedisStringJava<span class=\"token punctuation\">.<\/span>java \r\n$java RedisStringJava \r\nConnection to server sucessfully \r\nStored string in redis<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> Redis tutorial\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<h3 id=\"h3-redis-java-\"><a class=\"reference-link\" name=\"Redis Java\u5217\u8868\u793a\u4f8b\"><\/a>Redis Java\u5217\u8868\u793a\u4f8b<\/h3>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\"><span class=\"token keyword\">import<\/span> redis<span class=\"token punctuation\">.<\/span>clients<span class=\"token punctuation\">.<\/span>jedis<span class=\"token punctuation\">.<\/span>Jedis<span class=\"token punctuation\">;<\/span> \r\n\r\n<span class=\"token keyword\">public<\/span> <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">RedisListJava<\/span> <span class=\"token punctuation\">{<\/span> \r\n   <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">main<\/span><span class=\"token punctuation\">(<\/span>String<span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> args<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n      <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n      Jedis jedis <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Jedis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"localhost\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n\r\n      <span class=\"token comment\">\/\/store data in redis list <\/span>\r\n      jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Redis\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Mongodb\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Mysql\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token comment\">\/\/ Get the stored data and print it <\/span>\r\n      List<span class=\"token operator\">&lt;<\/span>String<span class=\"token operator\">&gt;<\/span> list <span class=\"token operator\">=<\/span> jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">lrange<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span> <span class=\"token punctuation\">,<\/span><span class=\"token number\">5<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n\r\n      <span class=\"token keyword\">for<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">int<\/span> i <span class=\"token operator\">=<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">&lt;<\/span>list<span class=\"token punctuation\">.<\/span><span class=\"token function\">size<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">++<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n         System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Stored string in redis:: \"<\/span><span class=\"token operator\">+<\/span>list<span class=\"token punctuation\">.<\/span><span class=\"token function\">get<\/span><span class=\"token punctuation\">(<\/span>i<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token punctuation\">}<\/span> \r\n   <span class=\"token punctuation\">}<\/span> \r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\">$javac RedisListJava<span class=\"token punctuation\">.<\/span>java \r\n$java RedisListJava \r\nConnection to server sucessfully \r\nStored string in redis<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> Redis \r\nStored string in redis<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> Mongodb \r\nStored string in redis<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> Mysql\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<h3 id=\"h3-redis-java-\"><a class=\"reference-link\" name=\"Redis Java\u952e\u793a\u4f8b\"><\/a>Redis Java\u952e\u793a\u4f8b<\/h3>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\"><span class=\"token keyword\">import<\/span> redis<span class=\"token punctuation\">.<\/span>clients<span class=\"token punctuation\">.<\/span>jedis<span class=\"token punctuation\">.<\/span>Jedis<span class=\"token punctuation\">;<\/span> \r\n\r\n<span class=\"token keyword\">public<\/span> <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">RedisKeyJava<\/span> <span class=\"token punctuation\">{<\/span> \r\n   <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">main<\/span><span class=\"token punctuation\">(<\/span>String<span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> args<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n      <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n      Jedis jedis <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Jedis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"localhost\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token comment\">\/\/store data in redis list <\/span>\r\n      <span class=\"token comment\">\/\/ Get the stored data and print it <\/span>\r\n      List<span class=\"token operator\">&lt;<\/span>String<span class=\"token operator\">&gt;<\/span> list <span class=\"token operator\">=<\/span> jedis<span class=\"token punctuation\">.<\/span><span class=\"token function\">keys<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"*\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n\r\n      <span class=\"token keyword\">for<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">int<\/span> i <span class=\"token operator\">=<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">&lt;<\/span>list<span class=\"token punctuation\">.<\/span><span class=\"token function\">size<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">++<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span> \r\n         System<span class=\"token punctuation\">.<\/span>out<span class=\"token punctuation\">.<\/span><span class=\"token function\">println<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"List of stored keys:: \"<\/span><span class=\"token operator\">+<\/span>list<span class=\"token punctuation\">.<\/span><span class=\"token function\">get<\/span><span class=\"token punctuation\">(<\/span>i<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n      <span class=\"token punctuation\">}<\/span> \r\n   <span class=\"token punctuation\">}<\/span> \r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\">$javac RedisKeyJava<span class=\"token punctuation\">.<\/span>java \r\n$java RedisKeyJava \r\nConnection to server sucessfully \r\nList of stored keys<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> tutorial<span class=\"token operator\">-<\/span>name \r\nList of stored keys<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> tutorial<span class=\"token operator\">-<\/span>list\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<h2 id=\"h2-19-php-redis\"><a class=\"reference-link\" name=\"19. PHP\u8fde\u63a5Redis\"><\/a>19. PHP\u8fde\u63a5Redis<\/h2>\n<p>\u5728php\u7a0b\u5e8f\u4e2d\u4f7f\u7528Redis\u4e4b\u524d\uff0c\u9700\u8981\u786e\u4fdd\u5728\u673a\u5668\u4e0a\u5b89\u88c5\u4e86Redis\u7684PHP\u9a71\u52a8\u7a0b\u5e8f\u548cPHP\u73af\u5883\u3002\u53ef\u4ee5\u5148\u5728\u5c06PHP\u7535\u8111\u4e0a\u5e76\u914d\u7f6e\u597d\u73af\u5883\u3002<\/p>\n<h2 id=\"h2-u5B89u88C5\"><a class=\"reference-link\" name=\"\u5b89\u88c5\"><\/a>\u5b89\u88c5<\/h2>\n<p>\u73b0\u5728\uff0c\u8ba9\u6211\u4eec\u770b\u770b\u5982\u4f55\u8bbe\u7f6eRedis PHP\u9a71\u52a8\u7a0b\u5e8f\u3002<br \/>\n\u4ecegithub\u5e93\u4e0b\u8f7d<code>phpredis<\/code>=&gt;\u00a0<a href=\"http:\/\/github.com\/nicolasff\/phpredis%E3%80%82\" target=\"_blank\" rel=\"noopener\">http:\/\/github.com\/nicolasff\/phpredis\u3002<\/a>\u00a0\u5f53\u4e0b\u8f7d\u5b83\u4e4b\u540e\uff0c\u63d0\u53d6\u6587\u4ef6\u5230<code>phpredis<\/code>\u76ee\u5f55\u3002\u5728Ubuntu\u4e0a\uff0c\u5b89\u88c5\u4ee5\u4e0b\u6269\u5c55\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">cd phpredis \r\nsudo phpize \r\nsudo .\/configure \r\nsudo make \r\nsudo make install\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u73b0\u5728\uff0c\u5c06\u201c<code>modules<\/code>\u201d\u6587\u4ef6\u5939\u7684\u5185\u5bb9\u590d\u5236\u5e76\u7c98\u8d34\u5230PHP\u6269\u5c55\u76ee\u5f55\u4e2d\uff0c\u5e76\u5728<code>php.ini<\/code>\u4e2d\u6dfb\u52a0\u4ee5\u4e0b\u884c\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">extension = redis.so\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<p>\u73b0\u5728\uff0cRedis PHP\u5b89\u88c5\u5b8c\u6210\uff01<\/p>\n<h2 id=\"h2--redis-\"><a class=\"reference-link\" name=\"\u4f7f\u7528\u8fde\u63a5\u5230Redis\u670d\u52a1\u5668\"><\/a>\u4f7f\u7528\u8fde\u63a5\u5230Redis\u670d\u52a1\u5668<\/h2>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\"><span class=\"token php language-php\"><span class=\"token delimiter important\">&lt;?php<\/span> \r\n   <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n   <span class=\"token variable\">$redis<\/span> <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Redis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">connect<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'127.0.0.1'<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">6379<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token comment\">\/\/check whether server is running or not <\/span>\r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Server is running: \"<\/span><span class=\"token punctuation\">.<\/span><span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">ping<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n<span class=\"token delimiter important\">?&gt;<\/span><\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<p>\u5f53\u7a0b\u5e8f\u6267\u884c\u65f6\uff0c\u5c06\u4ea7\u751f\u4ee5\u4e0b\u7ed3\u679c\u3002<\/p>\n<pre class=\"language-shell code-toolbar\"><code class=\" language-shell\">Connection to server sucessfully \r\nServer is running: PONG\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Shell<\/div>\n<\/div>\n<h2 id=\"h2-redis-php-\"><a class=\"reference-link\" name=\"Redis PHP\u5b57\u7b26\u4e32\u793a\u4f8b\"><\/a>Redis PHP\u5b57\u7b26\u4e32\u793a\u4f8b<\/h2>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\"><span class=\"token php language-php\"><span class=\"token delimiter important\">&lt;?php<\/span> \r\n   <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n   <span class=\"token variable\">$redis<\/span> <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Redis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">connect<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'127.0.0.1'<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">6379<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token comment\">\/\/set the data in redis string <\/span>\r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">set<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-name\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Redis tutorial\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token comment\">\/\/ Get the stored data and print it <\/span>\r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Stored string in redis:: \"<\/span> <span class=\"token punctuation\">.<\/span><span class=\"token variable\">$redis<\/span>\u2192<span class=\"token function\">get<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-name\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n<span class=\"token delimiter important\">?&gt;<\/span><\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-java code-toolbar\"><code class=\" language-java\">Connection to server sucessfully \r\nStored string in redis<span class=\"token operator\">:<\/span><span class=\"token operator\">:<\/span> Redis tutorial\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">Java<\/div>\n<\/div>\n<h2 id=\"h2-redis-php-\"><a class=\"reference-link\" name=\"Redis php\u5217\u8868\u793a\u4f8b\"><\/a>Redis php\u5217\u8868\u793a\u4f8b<\/h2>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\"><span class=\"token php language-php\"><span class=\"token delimiter important\">&lt;?php<\/span> \r\n   <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n   <span class=\"token variable\">$redis<\/span> <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Redis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">connect<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'127.0.0.1'<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">6379<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token comment\">\/\/store data in redis list <\/span>\r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Redis\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Mongodb\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">lpush<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Mysql\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  \r\n\r\n   <span class=\"token comment\">\/\/ Get the stored data and print it <\/span>\r\n   <span class=\"token variable\">$arList<\/span> <span class=\"token operator\">=<\/span> <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">lrange<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"tutorial-list\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span> <span class=\"token punctuation\">,<\/span><span class=\"token number\">5<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Stored string in redis:: \"<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token function\">print_r<\/span><span class=\"token punctuation\">(<\/span><span class=\"token variable\">$arList<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n<span class=\"token delimiter important\">?&gt;<\/span><\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\">Connection to server sucessfully \r\nStored string in <span class=\"token scope\">redis<span class=\"token punctuation\">::<\/span><\/span> \r\nRedis \r\nMongodb \r\nMysql\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<h2 id=\"h2-redis-php-\"><a class=\"reference-link\" name=\"Redis php\u952e\u793a\u4f8b\"><\/a>Redis php\u952e\u793a\u4f8b<\/h2>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\"><span class=\"token php language-php\"><span class=\"token delimiter important\">&lt;?php<\/span> \r\n   <span class=\"token comment\">\/\/Connecting to Redis server on localhost <\/span>\r\n   <span class=\"token variable\">$redis<\/span> <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Redis<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">connect<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'127.0.0.1'<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">6379<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Connection to server sucessfully\"<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token comment\">\/\/ Get the stored keys and print it <\/span>\r\n   <span class=\"token variable\">$arList<\/span> <span class=\"token operator\">=<\/span> <span class=\"token variable\">$redis<\/span><span class=\"token operator\">-<\/span><span class=\"token operator\">&gt;<\/span><span class=\"token function\">keys<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"*\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n   <span class=\"token keyword\">echo<\/span> <span class=\"token string\">\"Stored keys in redis:: \"<\/span> \r\n   <span class=\"token function\">print_r<\/span><span class=\"token punctuation\">(<\/span><span class=\"token variable\">$arList<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> \r\n<span class=\"token delimiter important\">?&gt;<\/span><\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<p>\u6267\u884c\u4e0a\u9762\u4ee3\u7801\uff0c\u5c06\u751f\u6210\u4ee5\u4e0b\u7ed3\u679c &#8211;<\/p>\n<pre class=\"language-php code-toolbar\"><code class=\" language-php\">Connection to server sucessfully \r\nStored string in <span class=\"token scope\">redis<span class=\"token punctuation\">::<\/span><\/span> \r\ntutorial<span class=\"token operator\">-<\/span>name \r\ntutorial<span class=\"token operator\">-<\/span>list\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">PHP<\/div>\n<\/div>\n<h2 id=\"h2-20-c-redis\"><a class=\"reference-link\" name=\"20. C#\u8fde\u63a5Redis\"><\/a>20. C#\u8fde\u63a5Redis<\/h2>\n<p>\u524d\u9762\u6211\u4eec\u5df2\u7ecf\u51c6\u5907\u6210\u529f\u5f00\u542fRedis\u670d\u52a1\uff0c\u5176\u7aef\u53e3\u53f7\u4e3a6379\uff0c\u63a5\u4e0b\u6765\u6211\u4eec\u5c31\u770b\u770b\u5982\u4f55\u4f7f\u7528C#\u8bed\u8a00\u6765\u64cd\u4f5cRedis\u3002\u5c31\u5982MongoDB\u4e00\u6837\uff0c\u8981\u64cd\u4f5cRedis\u670d\u52a1\uff0c\u81ea\u7136\u5c31\u9700\u8981\u4e0b\u8f7dC#\u7684\u5ba2\u6237\u7aef\uff0c\u8fd9\u91cc\u901a\u8fc7Nuget\u4e0b\u8f7d\u4e86\u201cServiceStack.Redis\u201d\u5ba2\u6237\u7aef\uff0c\u5f15\u5165\u6210\u529f\u4e4b\u540e\uff0c\u5c31\u53ef\u4ee5\u4f7f\u7528C#\u6765\u5bf9Redis\u670d\u52a1\u8fdb\u884c\u64cd\u4f5c\u4e86\u3002<\/p>\n<p>\u7531\u4e8eRedis\u4e00\u822c\u662f\u7528\u6765\u4f5c\u4e3a\u7f13\u5b58\u7684\uff0c\u4e5f\u5c31\u662f\u4e00\u822c\u6211\u4eec\u628a\u4e00\u4e9b\u4e0d\u7ecf\u5e38\u6539\u53d8\u7684\u6570\u636e\u901a\u8fc7Redis\u7f13\u5b58\u8d77\u6765\uff0c\u4e4b\u540e\u7528\u6237\u7684\u8bf7\u6c42\u5c31\u4e0d\u9700\u8981\u518d\u8bbf\u95ee\u6570\u636e\u5e93\uff0c\u800c\u53ef\u4ee5\u76f4\u63a5\u4eceRedis\u7f13\u5b58\u4e2d\u76f4\u63a5\u83b7\u53d6\uff0c\u8fd9\u6837\u5c31\u53ef\u4ee5\u51cf\u8f7b\u6570\u636e\u5e93\u670d\u52a1\u5668\u7684\u538b\u529b\u4ee5\u53ca\u52a0\u5feb\u54cd\u5e94\u901f\u5ea6\u3002\u65e2\u7136\u662f\u7528\u6765\u505a\u7f13\u5b58\u7684\uff0c\u4e5f\u5c31\u662f\u901a\u8fc7\u6307\u5b9akey\u503c\u6765\u628a\u5bf9\u5e94Value\u4fdd\u5b58\u8d77\u6765\uff0c\u4e4b\u540e\u518d\u6839\u636ekey\u503c\u6765\u83b7\u5f97\u4e4b\u524d\u7f13\u5b58\u7684\u503c\u3002\u5177\u4f53\u7684\u64cd\u4f5c\u4ee3\u7801\u5982\u4e0b\u6240\u793a\uff0c\u8fd9\u91cc\u5c31\u4e0d\u8fc7\u591a\u4ecb\u7ecd\u4e86\u3002<\/p>\n<p>\u8bf7\u53c2\u8003\u4ee5\u4e0b\u4ee3\u7801 &#8211;<\/p>\n<pre class=\"language-csharp code-toolbar\"><code class=\" language-csharp\"><span class=\"token keyword\">class<\/span> <span class=\"token class-name\">Program<\/span>\r\n    <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">Main<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">string<\/span><span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> args<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token comment\">\/\/\u5728Redis\u4e2d\u5b58\u50a8\u5e38\u7528\u76845\u79cd\u6570\u636e\u7c7b\u578b\uff1aString,Hash,List,SetSorted set<\/span>\r\n            <span class=\"token keyword\">var<\/span> client <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">RedisClient<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"127.0.0.1\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">6379<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token comment\">\/\/AddString(client);<\/span>\r\n            <span class=\"token comment\">\/\/AddHash(client);<\/span>\r\n            <span class=\"token comment\">\/\/AddList(client);<\/span>\r\n            <span class=\"token comment\">\/\/AddSet(client);<\/span>\r\n            <span class=\"token function\">AddSetSorted<\/span><span class=\"token punctuation\">(<\/span>client<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">ReadLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token keyword\">private<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">AddString<\/span><span class=\"token punctuation\">(<\/span>RedisClient client<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">var<\/span> timeOut <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">TimeSpan<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span><span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span><span class=\"token number\">30<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">Add<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Test\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Learninghard\"<\/span><span class=\"token punctuation\">,<\/span> timeOut<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">while<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">true<\/span><span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>client<span class=\"token punctuation\">.<\/span><span class=\"token function\">ContainsKey<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Test\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span>\r\n                <span class=\"token punctuation\">{<\/span>\r\n                    Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"String Key: Test -Value: {0}, \u5f53\u524d\u65f6\u95f4: {1}\"<\/span><span class=\"token punctuation\">,<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token generic-method function\">Get<span class=\"token punctuation\">&lt;<\/span><span class=\"token keyword\">string<\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Test\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">,<\/span> DateTime<span class=\"token punctuation\">.<\/span>Now<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n                    Thread<span class=\"token punctuation\">.<\/span><span class=\"token function\">Sleep<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">10000<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n                <span class=\"token punctuation\">}<\/span>\r\n                <span class=\"token keyword\">else<\/span>\r\n                <span class=\"token punctuation\">{<\/span>\r\n                    Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Value \u5df2\u7ecf\u8fc7\u671f\u4e86\uff0c\u5f53\u524d\u65f6\u95f4\uff1a{0}\"<\/span><span class=\"token punctuation\">,<\/span> DateTime<span class=\"token punctuation\">.<\/span>Now<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n                    <span class=\"token keyword\">break<\/span><span class=\"token punctuation\">;<\/span>\r\n                <span class=\"token punctuation\">}<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> person <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Person<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>Name <span class=\"token operator\">=<\/span> <span class=\"token string\">\"Learninghard\"<\/span><span class=\"token punctuation\">,<\/span> Age <span class=\"token operator\">=<\/span> <span class=\"token number\">26<\/span><span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">Add<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"lh\"<\/span><span class=\"token punctuation\">,<\/span> person<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">var<\/span> cachePerson <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token generic-method function\">Get<span class=\"token punctuation\">&lt;<\/span>Person<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"lh\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Person's Name is : {0}, Age: {1}\"<\/span><span class=\"token punctuation\">,<\/span> cachePerson<span class=\"token punctuation\">.<\/span>Name<span class=\"token punctuation\">,<\/span> cachePerson<span class=\"token punctuation\">.<\/span>Age<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token keyword\">private<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">AddHash<\/span><span class=\"token punctuation\">(<\/span>RedisClient client<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>client <span class=\"token operator\">==<\/span> <span class=\"token keyword\">null<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">ArgumentNullException<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"client\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">SetEntryInHash<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Name\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Learninghard\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">SetEntryInHash<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Age\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"26\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">SetEntryInHash<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Sex\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"\u7537\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> hashKeys <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetHashKeys<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> key <span class=\"token keyword\">in<\/span> hashKeys<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId--Key:{0}\"<\/span><span class=\"token punctuation\">,<\/span> key<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> haskValues <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetHashValues<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> <span class=\"token keyword\">value<\/span> <span class=\"token keyword\">in<\/span> haskValues<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"HashId--Value:{0}\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token keyword\">value<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> allKeys <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetAllKeys<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token comment\">\/\/\u83b7\u53d6\u6240\u6709\u7684key\u3002<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> key <span class=\"token keyword\">in<\/span> allKeys<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"AllKey--Key:{0}\"<\/span><span class=\"token punctuation\">,<\/span> key<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token keyword\">private<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">AddList<\/span><span class=\"token punctuation\">(<\/span>RedisClient client<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>client <span class=\"token operator\">==<\/span> <span class=\"token keyword\">null<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">ArgumentNullException<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"client\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">EnqueueItemOnList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"1.Learnghard\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/\/\u5165\u961f<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">EnqueueItemOnList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"2.\u5f20\u4e09\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">EnqueueItemOnList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"3.\u674e\u56db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">EnqueueItemOnList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"4.\u738b\u4e94\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">var<\/span> queueCount <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetListCount<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token keyword\">for<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> i <span class=\"token operator\">=<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span> i <span class=\"token operator\">&lt;<\/span> queueCount<span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">++<\/span><span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\u51fa\u961f\u503c\uff1a{0}\"<\/span><span class=\"token punctuation\">,<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">DequeueItemFromList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"QueueListId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>   <span class=\"token comment\">\/\/\u51fa\u961f(\u961f\u5217\u5148\u8fdb\u5148\u51fa)<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">PushItemToList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"1.Learninghard\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/\/\u5165\u6808<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">PushItemToList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"2.\u5f20\u4e09\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">PushItemToList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"3.\u674e\u56db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">PushItemToList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"4.\u738b\u4e94\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> stackCount <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetListCount<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">for<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> i <span class=\"token operator\">=<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">;<\/span> i <span class=\"token operator\">&lt;<\/span> stackCount<span class=\"token punctuation\">;<\/span> i<span class=\"token operator\">++<\/span><span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\u51fa\u6808\u503c\uff1a{0}\"<\/span><span class=\"token punctuation\">,<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">PopItemFromList<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"StackListId\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>   <span class=\"token comment\">\/\/\u51fa\u6808(\u6808\u5148\u8fdb\u540e\u51fa)<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token comment\">\/\/\u5b83\u662fstring\u7c7b\u578b\u7684\u65e0\u5e8f\u96c6\u5408\u3002set\u662f\u901a\u8fc7hash table\u5b9e\u73b0\u7684\uff0c\u6dfb\u52a0\uff0c\u5220\u9664\u548c\u67e5\u627e,\u5bf9\u96c6\u5408\u6211\u4eec\u53ef\u4ee5\u53d6\u5e76\u96c6\uff0c\u4ea4\u96c6\uff0c\u5dee\u96c6<\/span>\r\n        <span class=\"token keyword\">private<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">AddSet<\/span><span class=\"token punctuation\">(<\/span>RedisClient client<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>client <span class=\"token operator\">==<\/span> <span class=\"token keyword\">null<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">ArgumentNullException<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"client\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"A\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"B\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"C\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"D\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">var<\/span> hastset1 <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetAllItemsFromSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> hastset1<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set\u65e0\u5e8f\u96c6\u5408Value:{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token comment\">\/\/\u51fa\u6765\u7684\u7ed3\u679c\u662f\u65e0\u987b\u7684<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"K\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"C\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"A\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"J\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">var<\/span> hastset2 <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetAllItemsFromSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1002\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> hastset2<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set\u65e0\u5e8f\u96c6\u5408ValueB:{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token comment\">\/\/\u51fa\u6765\u7684\u7ed3\u679c\u662f\u65e0\u987b\u7684<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> hashUnion <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetUnionFromSets<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">new<\/span> <span class=\"token class-name\">string<\/span><span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Set1002\"<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> hashUnion<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"\u6c42Set1001\u548cSet1002\u7684\u5e76\u96c6:{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token comment\">\/\/\u5e76\u96c6<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> hashG <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetIntersectFromSets<\/span><span class=\"token punctuation\">(<\/span><span class=\"token keyword\">new<\/span> <span class=\"token class-name\">string<\/span><span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"Set1002\"<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> hashG<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"\u6c42Set1001\u548cSet1002\u7684\u4ea4\u96c6:{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/\/\u4ea4\u96c6<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token keyword\">var<\/span> hashD <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetDifferencesFromSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Set1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">string<\/span><span class=\"token punctuation\">[<\/span><span class=\"token punctuation\">]<\/span> <span class=\"token punctuation\">{<\/span> <span class=\"token string\">\"Set1002\"<\/span> <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/\/[\u8fd4\u56de\u5b58\u5728\u4e8e\u7b2c\u4e00\u4e2a\u96c6\u5408\uff0c\u4f46\u662f\u4e0d\u5b58\u5728\u4e8e\u5176\u4ed6\u96c6\u5408\u7684\u6570\u636e\u3002\u5dee\u96c6]<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> hashD<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"\u6c42Set1001\u548cSet1002\u7684\u5dee\u96c6:{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>  <span class=\"token comment\">\/\/\u5dee\u96c6<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token punctuation\">}<\/span>\r\n\r\n        <span class=\"token comment\">\/*\r\n        sorted set \u662fset\u7684\u4e00\u4e2a\u5347\u7ea7\u7248\u672c\uff0c\u5b83\u5728set\u7684\u57fa\u7840\u4e0a\u589e\u52a0\u4e86\u4e00\u4e2a\u987a\u5e8f\u7684\u5c5e\u6027\uff0c\u8fd9\u4e00\u5c5e\u6027\u5728\u6dfb\u52a0\u4fee\u6539.\u5143\u7d20\u7684\u65f6\u5019\u53ef\u4ee5\u6307\u5b9a\uff0c\r\n        * \u6bcf\u6b21\u6307\u5b9a\u540e\uff0czset(\u8868\u793a\u6709\u5e8f\u96c6\u5408)\u4f1a\u81ea\u52a8\u91cd\u65b0\u6309\u65b0\u7684\u503c\u8c03\u6574\u987a\u5e8f\u3002\u53ef\u4ee5\u7406\u89e3\u4e3a\u6709\u5217\u7684\u8868\uff0c\u4e00\u5217\u5b58 value,\u4e00\u5217\u5b58\u987a\u5e8f\u3002\u64cd\u4f5c\u4e2dkey\u7406\u89e3\u4e3azset\u7684\u540d\u5b57.\r\n        *\/<\/span>\r\n        <span class=\"token keyword\">private<\/span> <span class=\"token keyword\">static<\/span> <span class=\"token keyword\">void<\/span> <span class=\"token function\">AddSetSorted<\/span><span class=\"token punctuation\">(<\/span>RedisClient client<span class=\"token punctuation\">)<\/span>\r\n        <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>client <span class=\"token operator\">==<\/span> <span class=\"token keyword\">null<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">ArgumentNullException<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"client\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"A\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"B\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1001\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"C\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">var<\/span> listSetSorted <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetAllItemsFromSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1001\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> listSetSorted<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted\u6709\u5e8f\u96c6\u5408{0}\"<\/span><span class=\"token punctuation\">,<\/span> item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"A\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">400<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"D\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">200<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            client<span class=\"token punctuation\">.<\/span><span class=\"token function\">AddItemToSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token string\">\"B\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">300<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token comment\">\/\/ \u5347\u5e8f\u83b7\u53d6\u7b2c\u4e00\u4e2a\u503c:\"D\"<\/span>\r\n            <span class=\"token keyword\">var<\/span> list <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetRangeFromSortedSet<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> list<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span>item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n\r\n            <span class=\"token comment\">\/\/\u964d\u5e8f\u83b7\u53d6\u7b2c\u4e00\u4e2a\u503c:\"A\"<\/span>\r\n            list <span class=\"token operator\">=<\/span> client<span class=\"token punctuation\">.<\/span><span class=\"token function\">GetRangeFromSortedSetDesc<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"SetSorted1002\"<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token number\">0<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n            <span class=\"token keyword\">foreach<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token keyword\">var<\/span> item <span class=\"token keyword\">in<\/span> list<span class=\"token punctuation\">)<\/span>\r\n            <span class=\"token punctuation\">{<\/span>\r\n                Console<span class=\"token punctuation\">.<\/span><span class=\"token function\">WriteLine<\/span><span class=\"token punctuation\">(<\/span>item<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n            <span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n\r\n    <span class=\"token keyword\">class<\/span> <span class=\"token class-name\">Person<\/span>\r\n    <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">string<\/span> Name <span class=\"token punctuation\">{<\/span> <span class=\"token keyword\">get<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token keyword\">set<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token keyword\">public<\/span> <span class=\"token keyword\">int<\/span> Age <span class=\"token punctuation\">{<\/span> <span class=\"token keyword\">get<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token keyword\">set<\/span><span class=\"token punctuation\">;<\/span> <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<div class=\"toolbar\">\n<div class=\"toolbar-item\">C#<\/div>\n<\/div>\n<p>\u5982\u4f55\u8981\u60f3\u67e5\u770b\u81ea\u5df1\u64cd\u4f5c\u662f\u5426\u6210\u529f\uff0c\u4e5f\u53ef\u4ee5\u50cfMongoDB\u90a3\u6837\u4e0b\u8f7d\u4e00\u4e2a\u5ba2\u6237\u7aef\u5de5\u5177\uff0c\u8fd9\u91cc\u63a8\u8350\u4e00\u6b3eRedis Desktop Manager\u3002\u8fd9\u4e2a\u5de5\u5177\u5c31\u76f8\u5f53\u4e8eSQL Server\u7684\u5ba2\u6237\u7aef\u5de5\u5177\u4e00\u6837\u3002\u901a\u8fc7\u8fd9\u6b3e\u5de5\u5177\u53ef\u4ee5\u67e5\u770bRedis\u670d\u52a1\u5668\u4e2d\u4fdd\u5b58\u7684\u6570\u636e\u548c\u5bf9\u5e94\u683c\u5f0f\u3002\u5176\u4f7f\u7528\u4e5f\u975e\u5e38\u7b80\u5355\uff0c\u53ea\u9700\u8981\u6dfb\u52a0\u4e00\u4e2aRedis\u670d\u52a1\u8fde\u63a5\u5373\u53ef\u3002\u8be5\u5de5\u5177\u7684\u4e0b\u8f7d\u5730\u5740\u4e3a\uff1a<a href=\"http:\/\/pan.baidu.com\/s\/1sjp55Ul\" target=\"_blank\" rel=\"noopener\">http:\/\/pan.baidu.com\/s\/1sjp55Ul<\/a><\/p>\n<p><b>\u6613\u767e\u6559\u7a0b\u79fb\u52a8\u7aef<\/b>\uff1a\u8bf7\u626b\u63cf\u672c\u9875\u9762\u5e95\u90e8(\u53f3\u4fa7)\u4e8c\u7ef4\u7801\u5e76\u5173\u6ce8\u5fae\u4fe1\u516c\u4f17\u53f7\uff0c\u56de\u590d\uff1a&#8221;<b>\u6559\u7a0b<\/b>&#8221; \u9009\u62e9\u76f8\u5173\u6559\u7a0b\u9605\u8bfb\u6216\u76f4\u63a5\u8bbf\u95ee\uff1ahttp:\/\/m.yiibai.com \u3002<\/p>\n<\/div>\n<\/article>\n","protected":false},"excerpt":{"rendered":"<p>Redis\u5feb\u901f\u5165\u95e8 \u00a5 \u6211\u8981\u6253\u8d4f\u00a0\u4f5c\u8005\uff1a<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[24],"tags":[121],"class_list":["post-1416","post","type-post","status-publish","format-standard","hentry","category-value_docs","tag-05-"],"_links":{"self":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts\/1416","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/comments?post=1416"}],"version-history":[{"count":0,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/posts\/1416\/revisions"}],"wp:attachment":[{"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/media?parent=1416"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/categories?post=1416"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/i007.cc\/wordpress\/wp-json\/wp\/v2\/tags?post=1416"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}