面向工资编程,面向面试学习!

Redis 教程

Redis 教程Redis 简介Redis 安装Redis 配置Redis 数据类型Redis 命令Redis 键(key)Redis DEL 命令Redis Dump 命令Redis EXISTS 命令Redis Expire 命令Redis Expireat 命令Redis Keys 命令Redis PEXPIREAT 命令Redis Move 命令Redis PERSIST 命令Redis Pttl 命令Redis TTL 命令Redis RANDOMKEY 命令Redis Rename 命令Redis Renamenx 命令Redis Type 命令Redis 字符串(String)Redis SET 命令Redis Get 命令Redis Getrange 命令Redis Getset 命令Redis Getbit 命令Redis Mget 命令Redis Setbit 命令Redis Setex 命令Redis Setnx 命令Redis Setrange 命令Redis Strlen 命令Redis Mset 命令Redis Msetnx 命令Redis Psetex 命令Redis Incr 命令Redis Incrby 命令Redis Incrbyfloat 命令Redis Decr 命令Redis Decrby 命令Redis Append 命令Redis 哈希(Hash)Redis Hdel 命令Redis Hexists 命令Redis Hget 命令Redis Hgetall 命令Redis Hincrby 命令Redis Hincrbyfloat 命令Redis Hkeys 命令Redis Hlen 命令Redis Hmget 命令Redis Hmset 命令Redis Hset 命令Redis Hsetnx 命令Redis Hvals 命令Redis 列表(List)Redis Blpop 命令Redis Brpop 命令Redis Brpoplpush 命令Redis Lindex 命令Redis Linsert 命令Redis Llen 命令Redis Lpop 命令Redis Lpush 命令Redis Lpushx 命令Redis Lrange 命令Redis Lrem 命令Redis Lset 命令Redis Ltrim 命令Redis Rpop 命令Redis Rpoplpush 命令Redis Rpush 命令Redis Rpushx 命令Redis 集合(Set)Redis Sadd 命令Redis Scard 命令Redis Sdiff 命令Redis Sdiffstore 命令Redis Sinter 命令Redis Sinterstore 命令Redis Sismember 命令Redis Smembers 命令Redis Smove 命令Redis Spop 命令Redis Srandmember 命令Redis Srem 命令Redis Sunion 命令Redis Sunionstore 命令Redis Sscan 命令Redis 有序集合(sorted set)Redis Zadd 命令Redis Zcard 命令Redis Zcount 命令Redis Zincrby 命令Redis Zinterstore 命令Redis Zlexcount 命令Redis Zrange 命令Redis Zrangebylex 命令Redis Zrangebyscore 命令Redis Zrank 命令Redis Zrem 命令Redis Zremrangebylex 命令Redis Zremrangebyrank 命令Redis Zremrangebyscore 命令Redis Zrevrange 命令Redis Zrevrangebyscore 命令Redis Zrevrank 命令Redis Zscore 命令Redis Zunionstore 命令Redis Zscan 命令Redis HyperLogLogRedis Pfadd 命令Redis Pfcount 命令Redis PFMERGE 命令Redis 发布订阅Redis Psubscribe 命令Redis Pubsub 命令Redis Publish 命令Redis Punsubscribe 命令Redis Subscribe 命令Redis Unsubscribe 命令Redis 事务Redis Discard 命令Redis Exec 命令Redis Multi 命令Redis Unwatch 命令Redis Watch 命令Redis 脚本Redis Eval 命令Redis Evalsha 命令Redis Script Exists 命令Redis Script Flush 命令Redis Script kill 命令Redis Script Load 命令Redis 连接Redis Auth 命令Redis Echo 命令Redis Ping 命令Redis Quit 命令Redis Select 命令Redis 服务器Redis Bgrewriteaof 命令Redis Bgsave 命令Redis Client Kill 命令Redis Client List 命令Redis Client Getname 命令Redis Client Pause 命令Redis Client Setname 命令Redis Cluster Slots 命令Redis Command 命令Redis Command Count 命令Redis Command Getkeys 命令Redis Command Info 命令Redis Config Get 命令Redis Config rewrite 命令Redis Config Set 命令Redis Config Resetstat 命令Redis Dbsize 命令Redis Debug Object 命令Redis Debug Segfault 命令Redis Flushall 命令Redis Flushdb 命令Redis Info 命令Redis Lastsave 命令Redis Monitor 命令Redis Role 命令Redis Save 命令Redis Shutdown 命令Redis Slaveof 命令Redis Showlog 命令Redis Sync 命令Redis Time 命令Redis 数据备份与恢复Redis 安全Redis 性能测试Redis 客户端连接Redis 管道技术Redis 分区Java 使用 RedisPHP 使用 RedisRedis PEXPIRE 命令

Redis 客户端连接

Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作:

  • 首先,客户端 socket 会被设置为非阻塞模式,因为 Redis 在网络事件处理上采用的是非阻塞多路复用模型。
  • 然后为这个 socket 设置 TCP_NODELAY 属性,禁用 Nagle 算法
  • 然后创建一个可读的文件事件用于监听这个客户端 socket 的数据发送

最大连接数

在 Redis2.4 中,最大连接数是被直接硬编码在代码里面的,而在2.6版本中这个值变成可配置的。

maxclients 的默认值是 10000,你也可以在 redis.conf 中对这个值进行修改。

config get maxclients

1) "maxclients"
2) "10000"

实例

以下实例我们在服务启动时设置最大连接数为 100000:

redis-server --maxclients 100000

客户端命令

S.N.命令描述
1 CLIENT LIST 返回连接到 redis 服务的客户端列表
2 CLIENT SETNAME 设置当前连接的名称
3 CLIENT GETNAME 获取通过 CLIENT SETNAME 命令设置的服务名称
4 CLIENT PAUSE 挂起客户端连接,指定挂起的时间以毫秒计
5 CLIENT KILL 关闭客户端连接