Redis集群基本搭建

1,256 阅读2分钟

1. 背景介绍

2. Redis集群的搭建,查看

2.2 编译后出现了扩展
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    CC redis-check-aof.o
    LINK redis-check-aof

3. Redis cluster 基准测试,查看

测试命令事例:

3.1 【单机】redis-benchmark -h 127.0.0.1 -p 6379 -c 10000 -n 1000

10000个并发连接,1000个请求,检测host为localhost 端口为6379的redis服务器性能

3.2 【单机】redis-benchmark -h 127.0.0.1 -p 6379 -q -d 100

测试存取大小为100字节的数据包的性能

PING_INLINE: 109769.48 requests per second
PING_BULK: 107991.36 requests per second
SET: 110864.74 requests per second
GET: 112233.45 requests per second
INCR: 115340.26 requests per second
LPUSH: 107181.13 requests per second
RPUSH: 102774.92 requests per second
^COP: 101861.36
3.3 【单机】redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 100000 -q
SET: 116279.07 requests per second
LPUSH: 116550.12 requests per second
3.4 redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"
3.5 【集群】redis-benchmark -h 127.0.0.1 -p 7000 -c 10000 -n 1000 ,集群和单机效果一样,其实集群的本质是把优先分配一个最近的单机进行处理,所以效果基本一致。
====== PING_INLINE ======
  1000 requests completed in 0.14 seconds
  10000 parallel clients
  3 bytes payload
  keep alive: 1

0.10% <= 127 milliseconds
2.10% <= 128 milliseconds
9.90% <= 129 milliseconds

一台主机可以处理,2w/s个并发,5w/s个请求,如果是两台机器的话,可以处理4w/s个并发,10w/s个请求

4. Redis集群会遇到的坑

  • 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

  • 百万并发数据的测试,查看

5. Redis 集群配置调优

6. Redis 集群的监控

7. Redis 集群的机制和算法

  • 采用键-哈希槽的算法。 把键通过算法映射到16834个槽中。

image

8. 遇到的问题

8.1 centos ruby 的版本比较低,需要安装新的版本?
  • ruby 2.3.* 版本的安装,查看
  • 解决安装完ruby却提示[/usr/bin/ruby: No such file or directory],查看
8.2 修改集群的节点问题
  • [ERR] Not all 16384 slots are covered by nodes.,查看