redis5.0.4-cluster集群搭建及jedis客户端操作
一、去官网下载redis5.0
然后解压安装
$ tar xzf redis-5.0..tar.gz
$ cd redis-5.0.
$ make
二、准备配置文件
打开redis-5.0.4/目录中的redis.conf文件,也就是redis的配置文件
1.注释掉本行配置,否则客户端连接会报错
2.修改端口为6381(后面还需要复制出来5个配置文件,6个配置文件端口分别从6381到6386)
3.修改启动方式为后台启动
4.这里文件名改成和端口一致
5.重要!打开三项cluster集群配置开关!
6.配置redis服务器密码,不配的话jedis连接会报如下错误:
redis.clients.jedis.exceptions.JedisDataException: DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients.
7.保存退出,重命名配置文件,和第5步中的配置保持一致
这个不改也可以,我是为了看上去知道是集群配置文件,才重命名的
8.将node-6381.conf文件再复制5份,并分别重命名
9.在复制出来的5份配置文件中,分别更改第2,4,5步中和端口相关的内容
三、启动集群
进入src/目录
1.依次启动6个节点的redis
2.执行集群启动命令
注意,命令随后有个“-a admin”,这里是输入刚才设置的密码,否则无法创建集群
而且ip不能输入127.0.01,否则客户端无法连接
./redis-cli --cluster create 10.100.93.44:6381 10.100.93.44:6382 10.100.93.44:6383 10.100.93.44:6384 10.100.93.44:6385 10.100.93.44:6386 --cluster-replicas 1 -a admin
中间需要输入一个“yes”
到这里,redis5.0的cluster集群就创建完成了,从中也能看到,6381,6382,6383节点是主节点
四、Jedis客户端操作
我这里采用的jedis版本是:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.0.1</version>
</dependency>
客户端代码:
public static void main(String[] args) { Set<HostAndPort> jedisClusterNodes = new HashSet<>();
//Jedis Cluster will attempt to discover cluster nodes automatically
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6381));
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6382));
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6383));
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6384));
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6385));
jedisClusterNodes.add(new HostAndPort("10.100.93.44", 6386)); JedisPoolConfig jpc = new JedisPoolConfig();
jpc.setMaxTotal(10);
jpc.setMaxIdle(10);
jpc.setMinIdle(10); JedisCluster jc = new JedisCluster(jedisClusterNodes, 5000, 5000, 2, "admin", jpc);
jc.set("dijia478", "112233"); String keys = jc.get("dijia478");
System.out.println(keys); }
运行结果:
redis集群情况:
可以看到,测试的一个key,已经插入到了6383节点了。
测试demo:https://github.com/dijia478/redis5-cluster-client
redis5.0.4-cluster集群搭建及jedis客户端操作的更多相关文章
- Redis5.0.8 Cluster集群部署
目录 一.Redis Cluster简介 二.部署 三.创建主库 一.Redis Cluster简介 Redis Cluster集群是一种去中心化的高可用服务,其内置的sentinel功能可以提供高可 ...
- Redis Cluster集群搭建后,客户端的连接研究(Spring/Jedis)(待实践)
说明:无论是否已经搭建好集群,还是使用什么样的客户端去连接,都是必须把全部IP列表集成进去,然后随机往其中一个IP写. 这样做的好处: 1.随机IP写入之后,Redis Cluster代理层会自动根据 ...
- Redis Cluster集群搭建与应用
1.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper,但从redis 3.0之后版本支持redis-cluster集群,redis-cluster采用无中心结 ...
- 重要参考步骤---ProxySQL Cluster 集群搭建步骤
环境 proxysql-1:192.168.20.202 proxysql-2:192.168.20.203 均采用yum方式安装 # cat <<EOF | tee /etc/yum.r ...
- redis5.0 Cluster集群搭建
安装redis sudo apt update sudo apt install build-essential tcl cd ~ mkdir document/ cd document/ curl ...
- CentOs7.3 搭建 Redis-4.0.1 Cluster 集群服务
环境 VMware版本号:12.0.0 CentOS版本:CentOS 7.3.1611 三台虚拟机(IP):192.168.252.101,192.168.102..102,192.168.252. ...
- Redis5以上版本伪集群搭建(高可用集群模式)
redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用一台机器(可以多台机器部署,修改一下ip地 ...
- Redis Cluster 集群搭建与扩容、缩容
说明:仍然是伪集群,所有的Redis节点,都在一个服务器上,采用不同配置文件,不同端口的形式实现 前提:已经安装好了Redis,本文的redis的版本是redis-6.2.3 Redis的下载.安装参 ...
- redis 学习笔记(6)-cluster集群搭建
上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...
随机推荐
- zookeeper简绍
先一句话概括下zookeeper:zookeeper可谓是目前使用最广泛的分布式组件了.其功能和职责单一,但却非常重要. zookeeper到底是什么?(技术文) 1)zookeeper实际上是yah ...
- 【319】Python 通过 Twilio 发短信
参考:python利用twilio模块给自己发短信 参考:使用python实现往手机发短信(基于twilio) 步骤如下: 登录 Twilio 网站注册,貌似需要***,包括用户名.密码.手机号.项目 ...
- asp.net webapi 参数绑定总结
首先必须得更正下自己一直以来对于get请求和post请求理解的一个误区:get请求只能通过url传参,post请求只能通过body传参. 其实上面的理解是错误的,翻阅了不少资料及具体实践,正确理解应该 ...
- MonoBehaviour.OnValidate
[MonoBehaviour.OnValidate] This function is called when the script is loaded or a value is changed i ...
- W-D-S-Nandflash
1.6410的硬件一上电就会把nandflash前8K的内容拷贝到6410片内内存来,从片内内存0地址开始运行,如果烧写到nandflash里面的程序大于8k,则拷贝到6410片内的8k程序要把nan ...
- Shell 常用命令总结
Shell常用命令总结 1 ls命令:列出文件 ls -la 列出当前目录下的所有文件和文件夹 ls a* 列出当前目录下所有以a字母开头的文件 ls -l *.txt 列出当前目录下所有后缀名 ...
- WordPress 3.7.1-web截屏插件整合教程-Xproer.ScreenCapture
插件下载(PHP):wordpress 3.7.1, 说明:由于许多插件可能使用相同钩子,导致冲突,所以提供手支方式整合. 1.上传插件目录. 说明:WordPress 3.7.1 使用的是TinyM ...
- .NET基础 (13)IFormattable和IformatProvider的使用
IFormattable和IformatProvider的使用1 如何使用IFormattable接口实现格式化输出2 如何告诉类型格式化输出的方式 IFormattable和IformatProvi ...
- Oracle EBS Export File Format
Profile Option Name Site Application Responsibility Server Server Org User Remark Export MIME type t ...
- Oracle EBS 初始化用户密码
---修改密码,并且将限制用户下次登录的时候(第一次登录),强制要换一个新的口令: ---此过程可以完全模拟我们在标准用户的Form里面初始化用户的密码的动作! ---最后要说明的是,这个处理过程 ...