redis 学习问题总结 |
http://aperise.iteye.com/blog/2310639 |
ehcache memcached redis 缓存技术总结 |
http://aperise.iteye.com/blog/2296219 |
redis-stat 离线安装 |
http://aperise.iteye.com/blog/2310254 |
redis cluster 非ruby方式启动 |
http://aperise.iteye.com/blog/2310254 |
redis-sentinel安装部署 |
http://aperise.iteye.com/blog/2342693 |
spring-data-redis使用 |
http://aperise.iteye.com/blog/2342615 |
redis客户端redisson实战 |
http://blog.csdn.net/zilong_zilong/article/details/78252037 |
redisson-2.10.4源代码分析 |
http://blog.csdn.net/zilong_zilong/article/details/78609423 |
tcmalloc jemalloc libc选择 |
http://blog.csdn.net/u010994304/article/details/49906819 |
redis-sentinel安装部署
1.redis安装
1)必要的linux库安装
yum install gcc
yum install tcl
yum install tcl
2)下载、解压、编译和安装redis
#创建redis用户和组
groupadd redis
useradd -g redis redis
#修改用户密码
passwd redis
#使用root账户切换到redis目录
cd /home/redis
#下载redis源码redis-3.2.0.tar.gz
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
#解压redis-3.2.0.tar.gz
tar -zxvf redis-3.2.0.tar.gz
#编译和安装
cd /home/redis/redis-3.2.0
make
make install
groupadd redis
useradd -g redis redis
#修改用户密码
passwd redis
#使用root账户切换到redis目录
cd /home/redis
#下载redis源码redis-3.2.0.tar.gz
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
#解压redis-3.2.0.tar.gz
tar -zxvf redis-3.2.0.tar.gz
#编译和安装
cd /home/redis/redis-3.2.0
make
make install
3) 安装完成后会在系统目录/usr/local/bin下生成如下文件:
2.redis-sentinel部署
1)部署结构图如下
2)3台redis节点部署并启动
节点一192.168.173.23上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.23
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.23
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
节点一192.168.173.23上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
节点二192.168.173.24上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.24
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.24
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
节点二192.168.173.24上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
节点三192.168.173.25上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.25
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.25
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
节点三192.168.173.25上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
3)3台sentinel服务部署
节点一192.168.173.23上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.23
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.23
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点一192.168.173.23上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
节点二192.168.173.24上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.24
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.24
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点二192.168.173.24上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
节点三192.168.173.25上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.25
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.25
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点三192.168.173.25上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
4)节点一redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
5)节点二redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
6)节点三redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
3.redis-sentinel部署方式下redis-stat启动
3.1 redis-stat命令介绍
安装参见博客 redis-stat安装
cd /home/redis/redis-stat-0.4.13/bin
./redis-stat --help
usage: redis-stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
-a, --auth=PASSWORD Password
-v, --verbose Show more info
--style=STYLE Output style: unicode|ascii
--no-color Suppress ANSI color codes
--csv[=CSV_FILE] Print or save the result in CSV
--es=ELASTICSEARCH_URL Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
--server[=PORT] Launch redis-stat web server (default port: 63790)
--daemon Daemonize redis-stat. Must be used with --server option.
--version Show version
--help Show this message
./redis-stat --help
usage: redis-stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
-a, --auth=PASSWORD Password
-v, --verbose Show more info
--style=STYLE Output style: unicode|ascii
--no-color Suppress ANSI color codes
--csv[=CSV_FILE] Print or save the result in CSV
--es=ELASTICSEARCH_URL Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
--server[=PORT] Launch redis-stat web server (default port: 63790)
--daemon Daemonize redis-stat. Must be used with --server option.
--version Show version
--help Show this message
3.2 redis-stat启动
linux上启动
cd /home/redis/redis-stat-0.4.13/bin
./redis-stat 192.168.173.23:6382 192.168.173.24:6382 192.168.173.25:6382 --server --daemon -a abcd_123456
./redis-stat 192.168.173.23:6382 192.168.173.24:6382 192.168.173.25:6382 --server --daemon -a abcd_123456
启动后截图如下:
相关推荐
实际上,这意味着使用Sentinel可以创建Redis部署,该部署可以在无需人工干预的情况下抵抗某些类型的故障。 Redis:trade_mark:Sentinel还提供其他附带任务,例如监视,通知,并充当客户端的配置提供程序。TL; DR $ ...
这个"redis-sentinel-bin.7z"压缩包包含了部署Redis Sentinel伪集群所需的基础组件和配置文件。下面将详细介绍Redis Sentinel、哨兵集群部署、Redis集群配置、RDB和AOF的相关知识点。 **Redis Sentinel** Redis ...
6. `redis-sentinel.exe`:Redis Sentinel是高可用性解决方案的一部分,它可以监控主从集群,自动处理主服务器故障切换。 在Windows环境下,启动Redis服务器一般通过运行`redis-server.exe`来完成,同时可以配置`...
总的来说,Redis 7.0.5 for Windows 64位版提供了一套完整的工具集,不仅包含数据库服务器本身,还有监控、维护和性能评估工具,确保用户在Windows环境下能够顺利部署和管理Redis实例。通过配置文件的调整,可以满足...
Redis Sentinel是Redis的一个高可用性解决方案,它提供了监控、故障检测和自动故障转移等功能,确保在主Redis服务器出现故障时,系统能够无缝地切换到备份节点,从而保持服务的连续性和稳定性。SpringBoot是一个轻量...
Redis Sentinel 是一个重要的组件,它是 Redis 高可用性(HA)解决方案的关键部分。这个压缩包“redis-sentinel....在实际部署中,需要结合具体环境调整脚本和配置,确保 Sentinel 能够有效地服务于你的 Redis 集群。
这个压缩包包含了运行 Redis Stack 所需的所有组件,便于在 RHEL7 系统上快速安装和配置。 Redis 是一款高性能的键值存储系统,常用于缓存、数据库和消息代理等场景。它支持多种数据结构,如字符串、哈希、列表、...
3. **run-sentinel.bat**: 这个批处理文件用于启动Redis Sentinel。Sentinel是Redis的一个组件,用于监控、故障转移和配置更新,以提供高可用性。启动此脚本可以管理和监控多个Redis实例。 4. **run-cluster.bat**:...
在部署Redis时,考虑集群模式也是重要的一步。Redis支持哨兵(Sentinel)系统,用于监控、故障检测和自动故障恢复。通过配置多个Sentinel节点,可以实现对主从节点的高可用性监控。此外,Redis Cluster是另一种集群...
Redis还提供事务、发布/订阅、持久化、主从复制和哨兵(Sentinel)高可用性方案等功能,使其成为许多分布式应用的首选内存数据库。 总的来说,"Redis-x64-5.0.14.1.msi"是Windows用户快速部署Redis的一个便捷方式,...
3. **Windows 安装与配置**:Redis 通常在 Linux 环境下运行,但通过社区提供的二进制包,也可以在 Windows 上部署。解压 "Redis-x64-3.2.100-稳定版" 压缩包后,包含可执行文件 `redis-server.exe` 和配置文件 `...
1. **部署 Sentinel 实例**:在多个独立的服务器上部署至少三个 Sentinel 实例,以保证 Sentinel 系统本身的高可用。 2. **配置 Sentinel**:每个 Sentinel 实例需要配置指向被监控的主节点及其从节点的地址,并设置...
Redis 是一个开源的,高...综上所述,"Redis-x64-3.2.100"资源包为Windows用户提供了一种简单易用的方式来部署和管理Redis服务器,无论是用于开发测试还是生产环境,都能享受到Redis带来的高效和灵活的数据存储服务。
免安装版本的Redis意味着用户无需经历传统安装过程,只需将压缩包解压到任意位置,就可以开始使用。通常,解压缩后的文件夹会包含以下几个关键组件: 1. **redis-server.exe**:这是Redis服务器的可执行文件,用于...
8. **哨兵系统 (Sentinel)**:Redis Sentinel 是一个高可用性解决方案,监控、故障检测以及自动故障转移,保证主从服务的稳定运行。 9. **Cluster 分片**:Redis Cluster 实现了数据分片,可以将数据分散在多个节点...
在Windows环境下安装Redis-x64-3.0.504,通常只需要解压缩文件到任意目录,然后通过启动`redis-server.exe`服务来运行。这个版本可能已经包含了配置文件`redis.conf`,用户可以根据需求进行配置,如修改端口、设置...
下面将详细介绍 Redis 的基本概念、功能以及与Windows相关的安装和配置。 1. **Redis的基本概念** - Redis 是“Remote Dictionary Server”的缩写,它是一个开源的、基于内存的数据结构存储系统。 - 支持数据类型...
此外,通过配合使用Redis Sentinel或Redis Cluster实现高可用性,可以确保服务在单点故障时仍能正常运行。 总的来说,Redis在Windows环境下的部署和管理可以通过这个压缩包提供的组件得以实现。Redis服务器负责存储...
在Linux环境中部署Redis 7.2.3,首先解压redis-7.2.3.zip,然后编译安装,配置redis.conf文件,根据实际需求调整各项参数,如端口、内存限制等。启动服务后,可以通过redis-cli客户端进行交互式操作。为了保证服务...
在这个名为 "redis-64.3.0.503-sentinel.zip" 的压缩包中,包含的是 Redis Sentinel 版本 64.3.0.503 的二进制文件和其他相关资源,用于在64位操作系统上部署和管理Redis集群。 Redis 是一个开源的、基于键值对的...