redis源码之:clion搭建cluster环境

cluster集群通常每个node节点都是一主N从的模式,此处为简化环境搭建,所有node节点均只有一个主节点。
在这里插入图片描述
在clion环境中,为方便debug,需要通过配置多个cmake application实现redis-server、redis-cli等源码debug模式启动。

一、配置文件准备

分别准备6379、6380、6381、6382四个节点配置文件,都可以从官方的配置里复制,然后主要修改端口号和配置cluster,其他按默认配置

port 6379
cluster-enabled yes
cluster-config-file nodes-6379.conf
dbfilename dump6379.rdb
pidfile /var/run/redis_6379.pid
port 6380
cluster-enabled yes
cluster-config-file nodes-6380.conf
dbfilename dump6379.rdb
pidfile /var/run/redis_6380.pid
port 6381
cluster-enabled yes
cluster-config-file nodes-6381.conf
dbfilename dump6379.rdb
pidfile /var/run/redis_6381.pid
port 6382
cluster-enabled yes
cluster-config-file nodes-6382.conf
dbfilename dump6379.rdb
pidfile /var/run/redis_6382.pid

二、启动redis

启动四个节点
在右上角运行框点edit configuration:
在这里插入图片描述
在这里插入图片描述
启动四个节点需要创建四个cmake application,每个redis-server按端口号区分,选择target时,只要clion正常编译了redis的代码,即可有redis-server、redis-cli等可选,有多少可选的target是按CMakeLists.txt文档中配置的install target生成的,每个target都有对应不同的main方法在这里插入图片描述
启动参数,填写配置文件名称路径,因为我的配置文件都是放redis工程工作目录下,直接相对路径即可。
配合好四个redis-server后逐一启动每个redis-server即可。
在这里插入图片描述
此时所有的节点都是孤立节点,相互间没有建立通信,没有建立集群。

三、创建集群

同样,先配置cmake application
在这里插入图片描述
对应的命令行:redis-cli --cluster create 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381
在这里插入图片描述
集群创建后,按配置的cluster-config-file文件名,自动生成集群信息:
在这里插入图片描述

四、redis-cli其他命令配置

redis-cli的其他命令也都可以按照相同的方式配置:
比如:check(redis-cli --cluster check 127.0.0.1:6379
在这里插入图片描述
比如:add node(redis-cli --cluster add-node 127.0.0.1:6382 127.0.0.1:6379
在这里插入图片描述
当然,有些命令如果不需要debug查看代码逻辑,依旧可以通过已经安装的redis-cli执行:
首先现在工作目录下打开一个终端窗口,然后输入命令执行:
如:./redis-cli --cluster check 127.0.0.1:6379
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/434208.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

雨云VPS搭建幻兽帕鲁服务器,PalWorld开服联机教程(Windows),0基础保姆级教程

雨云VPS用Windows系统搭建幻兽帕鲁私服,PalWorld开服联机教程,零基础保姆级教程,本教程使用一键脚本来搭建幻兽帕鲁服务端,并讲了如何配置游戏参数,如何更新服务端等。 最近这游戏挺火,很多人想跟朋友联机…

Android 基础技术——RecyclerView

笔者希望做一个系列,整理 Android 基础技术,本章是关于 RecyclerView RecyclerView 对比 ListView 的优点 Adapter 面向的是 ViewHolder 不是 View, 可以省略 convertView.setTag 和 getTag 这些步骤可以设置布局管理器:竖向、横向、瀑布流方…

UI自动化搭建背景及优劣势分析

经常有人会问,什么样的项目才适合进行UI自动化测试呢?UI自动化测试相当于模拟手工测试,通过程序去操作页面上的控件。而在实际测试过程中,经常会遇到无法找到控件,或者因控件定义变更而带来的维护成本等问题。 哪些场…

(大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量

今天,面试了一家公司,什么也不说先来三道面试题做做,第一题。 那么,我们就开始做题吧,谁叫我们是打工人呢。 题目是这样的: 统计除豪车外,销售最差的车 车辆按批销售,每次销售若干…

使用Docker部署MySQL并结合内网穿透实现远程访问本地数据库

文章目录 前言1 .安装Docker2. 使用Docker拉取MySQL镜像3. 创建并启动MySQL容器4. 本地连接测试4.1 安装MySQL图形化界面工具4.2 使用MySQL Workbench连接测试 5. 公网远程访问本地MySQL5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主…

盛水最多的容器

https://leetcode.cn/problems/container-with-most-water/solutions/207215/sheng-zui-duo-shui-de-rong-qi-by-leetcode-solution/?envTypestudy-plan-v2&envIdtop-100-liked 1、暴力求解 我们可以固定一边,然后另一边逐渐向右移动,记录每次的面积…

[C++13]:stack queue priority_queue 模拟实现

stack && queue && priority_queue 模拟实现 一.stack1.概念:2.使用:3.模拟实现:一些题目:1.最小栈:2.栈的压入弹出序列:3.逆波兰表达式求值: 二.queue1.概念:2.使用…

Vue服务器端渲染(SSR)是不是技术的倒退?

一、什么是服务器端渲染,是不是技术退步? Vue服务器端渲染(Vue Server-Side Rendering,简称SSR)是一种将Vue组件在服务器端进行渲染,生成最终的HTML页面,然后将其发送给客户端的技术。 传统的V…

VBA快速智能拆分日期

实例需求: A列为待处理数据,日期有多种格式 单个日期:6.16同月简写时间段:7.7-8,其含为7.7-7.8跨月时间段:5.29-6.2 现在需要将A列日期,按照如下规则筛选,并提取开始日期和结束日…

【docker】linux系统docker的安装及使用

一、docker应用的安装 1.1 安装方式 Docker的自动化安装,即使用提供的一键安装的脚本,进行安装。 官方的一键安装方式:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 国内 daocloud一键安装命令:curl -s…

springboot133在线课程管理系统

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

精品基于Uniapp+ssm学生成绩管理系统App

《[含文档PPT源码等]精品基于Uniappssm学生成绩管理系统App》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功! 软件开发环境及开发工具: 开发语言:Java 后台框架:ssm 安卓框架&#xff1a…