redis集群连接池配置(redis集群客户端连接ip配置)

redis集群连接池配置(redis集群客户端连接ip配置)一 redis 的配置文件 redis conf 1 redis 配置文件中关于网络的配置 1 port 指定 redis 服务所使用的端口 默认使用 6379 2 bind 配置客户端连接 redis 服务时 所能使用的 ip 地址 默认可以使用 redis 服务所在主机上任何一个 ip 一般情况下 都会配置一个 ip 而且通常是一个事实 如果配置了 port 和 bind 则客户端连接 redis 服务时

大家好,我是讯享网,很高兴认识大家。



一、redis的配置文件redis.conf
1.redis配置文件中关于网络的配置
(1)port:指定redis服务所使用的端口,默认使用6379.
(2)bind:配置客户端连接redis服务时,所能使用的ip地址,默认可以使用redis服务所在主机上任何一个ip;一般情况下,都会配置一个ip,而且通常是一个事实。
如果配置了port和bind,则客户端连接redis服务时,必须指定端口号和ip:
redis-cli -h 192.168.11.128 -p 6380
redis-cli -h 192.168.11.128 -p 6380 shutdown
(3)tcp-keepalive:连接保活策略。

2.redis中的数据库
redis中默认有16个数据库(database),编号为0~15,redis也是一个应用对应一个数据库,与mysql数据库不同的是,redis的数据库由它自身创建,程序员不能手动创建。
如果想要改变redis中数据库的数量可以通过修改redis的配置文件redis.conf的databases的值来改变。

3.安全配置
客户端连接mysql数据库需要用户名和密码,而客户端连接redis数据库不需要用户名和密码,只要知道ip和端口就可以连,所以redis的安全性不如mysql。
redis也可以在服务端设置密码(默认不适用),通过配置文件来设置密码,修改requirepass值。此项需要在protected-mode=yes时起作用,使用密码登录客户端:
redis-cli -h ip -p port -a pwd
一旦设置了密码验证,客户端连接redis服务时,必须使用密码连接。

连接服务器 redis 集群 redis集群客户端连接ip配置_客户端
讯享网

连接服务器 redis 集群 redis集群客户端连接ip配置_数据库_02

三、redis的事务
1.概念
不论是关系型数据库还是非关系型数据库,都有事务的概念。
事务:把一组数据库命令放在一起执行,保证操作的原子性,要么同时成功,要么同时失败。
redis事务:允许把一组redis命令放在一起执行,把命令进行序列化(把命令排个序依次执行),然后一起执行,执行过程中不能保证原子性,只能保证部分原子性(后面解释)。

连接服务器 redis 集群 redis集群客户端连接ip配置_连接服务器 redis 集群_03

连接服务器 redis 集群 redis集群客户端连接ip配置_连接服务器 redis 集群_04

连接服务器 redis 集群 redis集群客户端连接ip配置_缓存_05

连接服务器 redis 集群 redis集群客户端连接ip配置_缓存_06

连接服务器 redis 集群 redis集群客户端连接ip配置_redis_07

连接服务器 redis 集群 redis集群客户端连接ip配置_redis_08

连接服务器 redis 集群 redis集群客户端连接ip配置_客户端_09

监控version字符串,只有version值未变事务才能正常执行。
说明:version字段主要用于解决并发执行的情况。
(5)unwatch:放弃监控所有的键

四、redis消息的发布与订阅(了解原理即可)
redis客户端订阅频道(频道可以理解为对于某些数据的关注,比如对于某个数据的修改的情况为一个频道,所有想要关注该数据修改情况的客户端订阅该频道,当该数据被修改时将消息发送到订阅了该频道的客户),消息的发布者往频道上发布消息,所有订阅此频道的客户端都能够接受到该消息。
(1)subscribe:订阅一个或者多个频道的信息

(2)publish:将消息发布到指定频道

(3)psubscribe:订阅一个或者多个频道,它的功能更强大,频道名支持通配符。

五、搭建redis集群
集群就是将多个服务器搭建成一个集体,多个服务器的数据相同,当有多个请求时,多个服务器可以分配处理请求(哪个服务器空闲着将请求分配给它处理),减轻只有一台服务器时服务器处理请求的压力。集群适用于处理“写少读多”的情况。
1.redis的主从复制
主机数据更新后根据配置和策略,自动同步到从机的master/slave机制,Master以写为主,Slave以读为主。
主从复制:主写从读,主多从少、读写分离、主写同步复制到从。
2.例如:搭建一主二从的redis集群
(1)搭建3台redis服务
按理需要在三台计算机中分别安装redis软件(服务器),但也可以在用1台redis模拟3台redis服务(假设分别为6379、6380、6381),方法是准备3份redis配置文件,分别将3份配置文件中的bind、pidfile、端口号、dbfilename(持久化文件)和logfile(日志文件)改为不同的值。分别使用3个redis配置文件启动3个redis服务,启动时指定对应的配置文件。
(2)通过3个redis客户端分别连接3台redis服务
(3)查看3台服务在集群中的主从角色

目前3个redis服务是3个互不关联的主机,都能写和读,都没有从机。
(4)设置主从关系
在6380和6381上执行:slaveof 127.0.0.1(主机ip地址) 6379(主机redis服务的端口),则6379是主机、6380和6381是从机。
(5)全量复制
一旦主从关系确定,会自动把主机中已有的数据会自动同步复制到从机上。
(6)增量复制
主机上修改数据,会自动同步复制到从机上。
(7)读写分离,主写从读
在从机上写数据会报错,从机只能读数据。
(8)主机宕机(主机宕机,默认从机原地待命,主机恢复后一切恢复正常)
关闭6379服务,可以发现6380和6381还是从机,但是连接状态(master-link-status)变成了down(也是通过info replication查看)。重启加粗样式6379服务,可以发现6379还是主机,有两个从机。
(9)从机宕机(从机恢复,需要重新设置主从关系)
关闭6380服务,发现6379还是主机,但是只有一个从机;6381还是从机,主机是6379(即6381不受影响)。重启6380服务,发现6380变成了独立的主机,6379与6381的状态与6380宕机时的状态一样。若要6380作为6379的从机则要重新设置主从关系。
(10)主机宕机,从机上位
关闭6379服务,找到一个性能较好的从机让其上位(变为主机)。
上位步骤:
断开原来主从关系,slaveof no one;
重新设置主从关系,让其它从机转换主机,执行slaveof命令重新设置。
这时再重启6379会发现它是一个没有从机的独立的主机。

七、Jedis
使用redis官方推荐的Jedis,在java应用中操作redis。Jedis几乎涵盖了redis的所有命令。操作redis的命令在Jedis中以方法的形式出现。
1.新建一个空项目,编码格式改为utf-8

连接服务器 redis 集群 redis集群客户端连接ip配置_缓存_10

连接服务器 redis 集群 redis集群客户端连接ip配置_redis_11

连接服务器 redis 集群 redis集群客户端连接ip配置_redis_12

连接服务器 redis 集群 redis集群客户端连接ip配置_redis_13

连接服务器 redis 集群 redis集群客户端连接ip配置_数据库_14

连接服务器 redis 集群 redis集群客户端连接ip配置_连接服务器 redis 集群_15

连接服务器 redis 集群 redis集群客户端连接ip配置_数据库_16

小讯
上一篇 2025-04-20 10:46
下一篇 2025-06-13 09:59

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/178641.html