Redis 群集部署

1.关系型数据库

关系型数据库是一个结构化的数据库,创建在关系模型基础上,-般面向记录。它借助于集合代数等数学概念和方法来处理数据库中的数据。关系模型指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。现实世界中.各种实体与实体之间的各种联系都可以用关系模型来表示。SQL(Structured Query Language,结构化查询语言〉语句就是一种基于关系型数据库的语言.用于执行对关系型数据库中数据的检索和操作。主流的关系型数据库包括Oracle,MySQL、SQL Server、Microsoft Access、DB2等。

2.非关系型数据库

NoSQL(NoSQL= Not Only SQL ),意思是“不仅仅是SQL.”,是非关系型数据库的总称。主流的NoSQL 数据库有Redis、 MangBD、Hbase、CouhDB等。以上这些数据库,它们的存储方式、存储结构以及使用的场景都是完全不同的.所以我们认为它是一个非关系型数据库的集合.而不是像关系型数据库一样.是一个统称。换言之,主流的关系型数据库以外的数据库,都是非关系型的。NoSQL数据库凭借着其非关系型.分布式.开源和横向扩展等优势,被认为是下一代数据库产品.

1. Redis简介

Redis 是一个开源的、使用C语言编写.支持网络.可基于内存亦可持久化的日志型、key-value(键值对)数据库,是目前分布式架构中不可或缺的一环。

Redis 服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程.而Redis的实际处理速度则完全依靠于主进程的执行效率.若在服务器上只运行一个Redis进程,当多个客户

端同时访问时.服务器的处理能力会有--定程度的下降,若在同一台服务器上开启多个Redis进程.Redis 在提高并发处理能力的同时会给服务器的CPU造成很大压力。也就是说,在实际生产环境中.需要根据实际的需求来决定开启多少个Redis进程。若对高并发要求更高一些.可能会考虑在同一台服务器上开启多个进程:若CPU资源比较紧张,采用单进程即可。

Redis 具有以下几个优点。

       具有极高的数据读写速度,数据读取的速度最高可达到110000次/s,数据写入速度最高可达到81000次/s。

      支持丰富的数据类型.不仅仅支持简单的key一value数据类型.还支持Strings、Lists、Hashes,Sets 及 Ordered Sets等数据类型操作。

       支持丰富的数据类型.不仅仅支持简单的key一value数据类型.还支持Strings、Lists、Hashes,Sets 及 Ordered Sets等数据类型操作。

        原子性,Redis所有操作都是原子性的。

        支持数据备份,即master一salve模式的数据备份。

部署配置实验

实验环境

虚拟机 6台 centos7.9

网卡NAT模式 数量 1

组件包Redis安装包

设备

IP

备注

Centos01

192.168.9.31

Node1

Centos02

192.168.9.32

Node2

Centos03

192.168.9.33

Node3

Centos04

192.168.9.34

Node4

Centos05

192.168.9.35

Node5

Centos06

192.168.9.36

Node6

初始配置

关闭防火墙关闭Selinux

Systemctl disable firewalld --now

关闭Selinux

setenforce 0
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config

配置IP DNS 网关

nmtui

上传Redis安装包

安装组件

yum -y install gcc vim net-tools

解压到/usr/src/ 目录下

[root@node2 ~]# tar zxf redis-7.2.4.tar.gz -C /usr/src/

进入解压目录进行编译安装

cd /usr/src/redis-7.2.4/make && make install

Redis操作命令关联系统

[root@node2 redis-7.2.4]# ln -s src/* /usr/sbin/

创建群集配置目录

mkdir cluster mkdir cluster/6001 
cp redis.conf cluster/6001
mkdir cluster/6002
cp redis.conf cluster/6002
mkdir cluster/6003
cp redis.conf cluster/6003
mkdir cluster/6004
cp redis.conf cluster/6004
mkdir cluster/6005
cp redis.conf cluster/6005
mkdir cluster/6006
cp redis.conf cluster/6006

分别修改

vim cluster/6001/redis.confbind 192.168.160.51           #将127.0.0.1修改对应节点IP
protected-mode no			#将yes 修改no关闭保护功能
port 6001					#将6379端口修改对应目录的
daemonize yes				#将no 修改yes 开启守护进程
cluster-enabled yes			#将 #删除 开启群集功能
cluster-config-file nodes-6379.conf #将 #删除 开启群集配置文件
cluster-node-timeout 15000		#将 #删除 开启群集节点超时

将群集目录 cluster 复制到其它节点

tar zcf cluster-dir.tar.gz cluster

每个节点 启动redis服务 不同节点变换目录 cluster/6002

redis-server cluster/6001/redis.conf

查询启动进程

ps  -aux

创建群集 仅在node 1 操作

yum -y install ruby ruby-devel rpm-buildredis-cli --cluster create 192.168.9.31:6001 192.168.9.32:6002 192.168.9.33:6003 192.168.9.34:6004 192.168.9.35:6005 192.168.9.36:6006 --cluster-replicas 1

验证测试验证测试

redis-cli -h 192.168.160.51 -p 6001 -c

cluster slots

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

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

相关文章

python及编程范式

编程范式 编程范式是一种基于特定的理论和原则来指导程序设计和开发风格的模型。它定义了编程语言的结构、风格、元素以及编写程序时应遵循的规则。不同的编程范式提供了不同视角来解决问题,影响着代码组织方式、执行流程以及如何表达程序逻辑。 OOP和FP 函数式编…

vue3监听input保留两位小数点

监听input输入框校验 再次记录下&#xff0c;这里没封装&#xff0c;仅演示~ 保留2位小数 只能输入数字和两位小数 <el-inputv-model"form.amount"oninput"valuevalue.replace(/[^0-9.]/g,).replace(/\.{2,}/g,.).replace(/^(\-)*(\d)\.(\d\d).*$/,$1$2.$3…

(2024,MixLoRA,任务干扰,独立因子选择,条件因子选择)使用 LoRA 的条件混合进行多模态指令调优

Multimodal Instruction Tuning with Conditional Mixture of LoRA 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 3. 任务干扰在多模态指令调优中的 LoRA 应用 3.1 背景&am…

小甲鱼Python07 函数初级

一、创建和调用函数 pass语句表示一个空的代码块&#xff0c;我们经常先写好函数&#xff0c;pass占一个坑&#xff0c;等规划好之后再来填坑。 函数也是可以指定参数的&#xff0c;我们会把参数传进去用来替代形参。 在Python里如果想要返回值&#xff0c;不需要指定函数的返…

仿牛客网项目---显示评论和添加评论功能的实现

这篇文章&#xff0c;我来介绍一下我的项目中的另外一个功能&#xff1a;显示评论和添加评论。 其实这两个功能都不怎么重要&#xff0c;我感觉最重要的应该是用户注册登录功能&#xff0c;这个也了解一下&#xff0c;知道这么一回事儿就好。 首先设计DAO层。 Mapper public …

python实现AES加密解密

1. 前言 AES是一种对称加密&#xff0c;所谓对称加密就是加密与解密使用的秘钥是一个。 之前写过一片关于python AES加密解密的文章&#xff0c;但是这里面细节实在很多&#xff0c;这次我从 参数类型、加密模式、编码模式、补全模式、等等方面 系统的说明如何使用AES加密解密…

直观理解卷积

卷积直观理解 原文来自最容易理解的对卷积(convolution)的解释 &#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;计算机杂记 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质就是极致…

从经典学习 NLP:小白到大白:1. Word Tokenization

文章目录 1 Word Tokenization1.1 Top-down/rule-based tokenization1.2 Byte-pair Encoding: A Bottom-up tokenization algorithm 1 Word Tokenization 来源&#xff1a;JM3 Chapter 2.5 p19-23 tokenization 就是 把 running text 分割成为 words&#xff1b; 常有两种方…

AVL 树

AVL树的概念 二叉搜索树虽可以缩短查找的效率&#xff0c;但如果数据有序或接近有序二叉搜索树将退化为单支树&#xff0c;查找元素相当于在顺序表中搜索元素&#xff0c;效率低下。因此&#xff0c;两位俄罗斯的数学家G.M.Adelson-Velskii和E.M.Landis在1962年 发明了一种解决…

k8s笔记26--快速实现prometheus监控harbor

k8s笔记26--快速实现prometheus监控harbor 简介采集指标&配置grafana面板采集指标配置grafana面板 说明 简介 harbor是当前最流行的开源容器镜像仓库项目&#xff0c;被大量IT团队广泛应用于生产、测试环境的项目中。本文基于Harbor、Prometheus、Grafana介绍快速实现监控…

3. 台阶问题

数楼梯 题目描述 楼梯有 N N N 阶&#xff0c;上楼可以一步上一阶&#xff0c;也可以一步上二阶。 编一个程序&#xff0c;计算共有多少种不同的走法。 输入格式 一个数字&#xff0c;楼梯数。 输出格式 输出走的方式总数。 样例 #1 样例输入 #1 4样例输出 #1 5提示…

FPGA之带有进位逻辑的加法运算

module ADDER&#xff08; input [5&#xff1a;0]A&#xff0c; input [5&#xff1a;0]B&#xff0c;output[6&#xff1a;0]Q &#xff09;&#xff1b; assign Q AB&#xff1b; endmodule 综合结果如下图所示&#xff1a; 使用了6个Lut&#xff0c;&#xff0c;6个LUT分布…

详细介绍如何用windows11自带Hyper-V安装虚拟机

通过系统自带的hyper-v安装windows11&#xff0c;舒服又惬意&#xff0c;相比用第三方虚拟机软件速度快很多。 硬件准备 1、对于电脑自带的虚拟机Hyper-V&#xff0c;不是每种电脑系统版本都带着的。我们先要确定您的系统符合 Hyper-V 的最低要求。我们跟着下面的步骤来执行&…

鸿蒙开发相关知识(四)【数据持久化(用户首选项、关系型数据库)、通知(基础通知、进度条通知、通知意图)】

文章目录 一、数据持久化1、用户首选项&#xff08;1&#xff09;语法说明&#xff08;2&#xff09;完整代码示例 2、关系型数据库&#xff08;1&#xff09;初始化数据库&#xff08;2&#xff09;增删改数据&#xff08;3&#xff09;查询数据&#xff08;4&#xff09;完整…

《2023年勒索软件攻击态势报告》

获取方式&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1zd-yVsuGwJADyyGNFR_TIQ?pwd2lo0 提取码&#xff1a;2lo0

探索数据结构:解锁计算世界的密码

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ &#x1f388;&#x1f388;养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属专栏&#xff1a;数据结构与算法 贝蒂的主页&#xff1a;Betty‘s blog 前言 随着应用程序变得越来越复杂和数据越来越丰富&#xff0c;几百万、…

600万订单每秒Disruptor +SpringBoot,如何解决消息不丢失?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、shein 希音、百度、网易的面试资格&#xff0c;遇到很多很重要的面试题&#xff1a; Disruptor 官方说能达到每秒600w OPS订单处理能力&…

Java——Object

1.Object万类之祖 1.1 Object类型的概述 Object类是所有类型的顶层父类&#xff0c;所有类型的直接或者间接的父类&#xff1b;所有的类型中都含有Object类中的所有方法。 随意定义一个类型,不手动显式定义其父类&#xff0c;那么这个类的父类就是Object类 public Object() …

【C语言】指针初阶2.0版本

这篇博文我们来继续学习指针的其他内容 指针2.0 传值调用与传址调用传值调用传址调用 一维数组与指针理解数组名使用指针深入理解一维数组 二级指针指针数组二维数组与指针 传值调用与传址调用 在开始之前&#xff0c;我们需要先了解这个概念&#xff0c;后面才能够正常的学习…

利用 Python 抓取数据探索汽车市场趋势

一、引言 随着全球对环境保护意识的增强和技术的进步&#xff0c;新能源汽车作为一种环保、高效的交通工具&#xff0c;正逐渐受到人们的关注和青睐。在这个背景下&#xff0c;对汽车市场的数据进行分析和研究显得尤为重要。 本文将介绍如何利用 Python 编程语言&#xff0c;结…