合肥网站建设模板晋江文学城官网

news/2025/9/23 5:15:47/文章来源:
合肥网站建设模板,晋江文学城官网,莱芜一中贴吧,东莞住建局redis复制本文是我们学院课程的一部分#xff0c;标题为Redis NoSQL键值存储 。 这是Redis的速成课程。 您将学习如何安装Redis和启动服务器。 此外#xff0c;您还会在Redis命令行上乱七八糟。 接下来是更高级的主题#xff0c;例如复制#xff0c;分片和集群#xff0c… redis复制 本文是我们学院课程的一部分标题为Redis NoSQL键值存储 。 这是Redis的速成课程。 您将学习如何安装Redis和启动服务器。 此外您还会在Redis命令行上乱七八糟。 接下来是更高级的主题例如复制分片和集群同时还介绍了Redis与Spring Data的集成。 在这里查看 目录 1.简介 2.在Redis中复制 3.在Redis中配置基本复制 4.验证复制是否有效 5.在运行时配置复制 6.高级复制配置 1.简介 复制是任何面向数据的解决方案的一个非常重要的功能复杂的关系数据库或简单的键/值存储。 复制使您可以将数据的许多副本分布在许多节点服务器数据中心和/或地理区域中。 复制是可靠的可水平扩展和容错的系统的基础一旦一个数据节点服务器发生故障另一个就准备好服务具有故障节点的大部分最新数据的查询或请求。 更不用说能够在主节点和从节点只读副本之间有效地拆分写入和读取操作的功能。 一些有趣的软件系统模式基于此类决策例如CQRS 命令查询责任分离和复制缓存解决方案。 基本上有两个主要的复制类 Master – Master 或Active – Active 和 Master – Slave 或Active – Passive 。 尽管Master – Master是自动故障转移的最佳选择但它非常复杂只有很少的数据解决方案。 在撰写本文时Redis 2.8.4仅支持Master – Slave复制。 2.在Redis中复制 本部分的内容基于出色的Redis文档[1] 。 如前所述Redis支持Master – Slave复制该复制允许从服务器成为主服务器的精确副本。 有关Redis复制的一些事实 Redis使用异步复制 Redis主服务器可以有多个从服务器 Redis从站可以接受来自其他从站的连接级联复制 Redis复制在主服务器端无阻塞当一个或多个从服务器执行初始同步时主服务器将继续处理查询 可以将Redis复制配置为在从属端无阻塞在从属端执行初始同步时它可以使用旧版本的数据集处理查询请参阅Advanced Replication Configuration slave-serve-stale-data设置 在几个建议的用例中Redis复制可能非常方便。 首先它可以用于具有多个从属服务器以进行只读查询或仅用于数据冗余。 其次也可以使用复制来避免主服务器将整个数据集写入磁盘从服务器可以配置为定期这样做。 另外Redis 2.8中最近的一项非常重要的增强功能是主服务器和从服务器通常能够继续复制过程而无需在复制链接断开后进行完全重新同步。 实际上这意味着如果在主服务器和从服务器之间发生网络分区则从服务器可以稍后通过获取丢失的更改集而不是整个数据集来追赶主服务器。 3.在Redis中配置基本复制 从站或副本配置非常简单基本形式只需要在redis.conf文件中设置单个参数slaveof 主IP地址和端口。 值得一提的是默认情况下Redis从站以只读模式运行。 此行为由配置文件redis.conf的slave-read-only选项redis.conf 可以在从属运行时使用CONFIG SET命令更改请参考本教程的第2部分 Redis命令–使用Redis命令行 。 只读从站将拒绝所有写命令。 反过来非只读从设备将接受写命令。 请注意以这种方式写入从站的数据是短暂的当从站和主站重新同步或重新启动从站时这些数据将消失。 为了在实践中了解Redis复制配置有多么容易我们将配置一个主服务器和两个从属服务器副本。 一个从属服务器副本将具有默认的只读模式在下面的图片中用绿色标记而另一个从属服务器副本将被配置为支持写操作以便我们可以实际看到发生了什么。 图1. Redis主从拓扑 对于主服务器和从服务器我们将使用Redis发行版中的配置模板redis.conf请参阅本教程的第1部分 Redis安装–如何安装Redis 。 对于master 只需将redis.conf复制到redis-master.conf cp redis.conf redis-master.conf 并使用以下配置启动Redis服务器 redis-server redis-master.conf 图2. Redis主服务器启动 对于slave副本1只需将redis.conf复制到redis-slave1.conf cp redis.conf redis-slave1.conf 并将以下配置设置添加到redis-slave1.conf 我们假设Redis master的主机名是master slaveof master 6379 然后使用此配置启动Redis服务器将默认端口覆盖为6380 redis-server redis-slave1.conf --port 6380 启动后从站副本立即与主站同步如下图所示。 图3. Redis从站副本1已启动默认情况下处于只读模式并立即与master同步 对于slave副本2只需将redis.conf复制到redis-slave2.conf cp redis.conf redis-slave2.conf 并将以下配置设置添加到redis-slave2.conf 我们假设Redis master的主机名是master slaveof master 6379 将slave-read-only从yes 默认更改为no 从而有效地允许写入。 slave-read-only no 最后使用此配置启动Redis服务器将默认端口替换为6381 redis-server redis-slave2.conf --port 6381 启动后从站副本立即与主站同步如下图所示。 图4. Redis从属服务器副本2已启动读写模式并立即与主服务器同步 此时我们有了一个拓扑其中连接了一个Redis主服务器和两个Redis从属服务器副本。 4.验证复制是否有效 有两种简单的技术可以确认Redis复制是否按预期工作。 最简单的方法是在主服务器上SET一些密钥然后在每个从服务器上对此密钥发出GET命令以查看它是否已复制。 图5.在主节点上设置密钥mykey 图6a 图6b。 在两个从节点上获取密钥mykey并验证是否复制了主节点上的更改 尝试在从站1上发出任何写命令都会导致错误因为它是在只读模式下配置的如下图所示。 图7.只读从属服务器 slave1 上的SET命令返回错误 因此在从机2上发出任何写命令都是合法的但是一旦从机与主机重新同步所有这些临时数据都将消失。 图8.接受读写从设备 slave2 上的SET命令 5.在运行时配置复制 如果您已经在运行多个独立的Redis服务器则借助Redis运行时配置功能可以配置主从复制而无需重新启动其中的一个。 为了在现场进行演示我们将在端口6390上运行常规Redis实例然后使其成为另一个Redis实例 master 的从属。 因此让我们来看看独立实例 redis-server --port 6390 图9.在端口6390上运行独立Redis实例 现在让我们使用redis-cli连接到该实例并使用SLAVEOF命令 [2] 使该实例成为正在运行的master实例的从属副本。 图10.使独立Redis实例成为从属副本 实例通过使用完全同步立即与主服务器同步如下图所示。 图11.独立Redis实例成为从属副本并与主实例进行完全重新同步 也可以同时使用CONFIG SET命令 [3] 将从站的默认只读模式更改为读写模式。 图12.将slave的默认只读模式更改为读写 在任何时候都可以使用CONFIG GET命令查询当前配置设置。 以下示例检索slave-read-only设置以确保将其值更改为“ yes ”。 图13.查询从站的只读模式配置设置 6.高级复制配置 除了我们的基本示例外还有很多设置在实词场景中非常有用。 在本节中将详细介绍其中的大部分内容以指出如何使复制更加健壮。 仅当当前至少有N个从属服务器连接到Redis主服务器时才可以将其配置为接受写入命令但是无法确保从属服务器实际收到了给定的写入操作仅在不足够的情况下限制丢失写入操作的暴露窗口从站可用具有指定的秒数。 配置设置支持最小数量的从属设备 min-slaves-to-write 该min-slaves-to-write的延迟不大于最大秒数 slaves-max-lag 。 如果不满足这些条件则主机将返回一个错误并且将不接受写入。 设置 min-slaves-to-write 从站数量 描述 设置奴隶数为了执行写命令应该连接该奴隶数。 奴隶数奴隶必须处于“在线”状态。 将该值设置为0将禁用此功能。 默认值 默认情况下 min-slaves-to-write设置为0禁用功能 例 min-slaves-to-write 3 表格1 设置 min-slaves-max-lag 秒数 描述 以秒为单位设置必须小于或等于指定值的延迟。 它是根据从从站收到的最后一次ping计算得出的通常每秒发送一次。 将该值设置为0将禁用该功能。 默认值 默认情况下 min-slaves-max-lag设置为10 例 min-slaves-max-lag 10 表2 如果主服务器受密码保护使用requirepass配置指令则可以在开始复制同步过程之前告诉从服务器进行身份验证否则主服务器将拒绝从服务器请求。 设置 大师认证 描述 配置用于与主服务器进行身份验证的密码 默认值 已注释掉无身份验证 例 masterauth mysectetpassword 表3 当从属服务器失去与主服务器的连接或复制仍在进行时从属服务器可以通过两种不同的方式进行操作 如果slave-serve-stale-data设置为“ yes ”默认设置slave仍将回复客户端请求可能包含过期数据或者如果这是第一次同步则数据集可能为空 如果slave-serve-stale-data设置为“ no ”则slave将对所有类型的命令 “ INFO [4]” 和SLAVEOF [2] 进行答复并显示错误“ 与主机进行同步 ”。 设置 slave-save-stale-data是| 没有 描述 配置从站失去与主站的连接时的行为 默认值 默认情况下 slave-serve-stale-data设置为yes 例 slave-serve-stale-data是 表4 从站以预定义的间隔将PING发送到服务器。 允许使用repl_ping_slave_period选项更改此间隔。 设置 repl-ping-slave-period 秒数 描述 配置从站将PING发送到服务器的频率 默认值 默认情况下 repl-ping-slave-period设置为10 例 repl-ping-slave-period 10 表5 可以配置主服务器和从服务器的复制超时从服务器的角度来看是超时当从服务器决定主服务器不可用时从超时的角度来看超时是从主服务器的角度来看当主服务器决定从服务器的角度是超时时不可用 从站的角度来看在SYNC期间进行批量传输I / O 从机角度来看主机超时 从主机角度来看从机超时 设置 repl-timeout 秒数 描述 配置复制超时。 重要的是要确保该值大于为repl-ping-slave-period指定的值否则每当主机和从机之间的通信量较低时都会检测到超时。 默认值 默认情况下 repl-timeout设置为60 例 repl-timeout 60 表6 出于复制目的Redis通过使用repl-disable-tcp-nodelay选项支持一些底层TCP协议调整。 如果将其设置为“ yes ”则Redis服务器将使用较少数量的TCP数据包和较少带宽将数据发送到从属服务器。 但这会增加数据显示在从属端的延迟对于使用默认配置的Linux内核此延迟最多为40毫秒。 激活此设置在非常繁忙的流量条件下或当主从之间的距离很远时可能会很有用。 默认情况下它设置为“ no ”这意味着将减少数据出现在从属端的延迟但是将使用更多带宽进行复制。 设置 repl-disable-tcp-nodelay是| 没有 描述 SYNC后在从属套接字上禁用/启用TCP_NODELAY 默认值 默认情况下 repl-disable-tcp-nodelay设置为“ no ”针对低延迟进行了优化 例 repl-disable-tcp-nodelay否 表7 有两个配置参数可帮助主服务器管理从属断开连接和部分复制复制积压大小和积压缓冲区生存时间。 待办事项是一个缓冲区当从站断开连接一段时间后该缓冲区会累积从站数据因此当从站要再次重新连接时通常不需要完全重新同步但是部分重新同步就足够了只需将部分数据传递给从站即可断开连接时错过。 复制积压最大从服务器可以断开连接的时间越长以后就可以执行部分​​重新同步。 仅当连接了至少一个从站时才分配积压。 设置 repl-backlog-size 描述 设置复制积压大小 默认值 默认情况下 repl-backlog-size is set to “ 1mb ” 例 repl-backlog-size 1mb 表8 主机在一段时间内不再连接从机后积压的订单将被释放。 repl-backlog-ttl选项配置从释放最后一个从属服务器开始到释放待办事项缓冲区所需的秒数。 设置 repl-backlog-ttl 秒数 描述 设置积压缓冲区的生存时间然后再释放它。 值为0表示从不释放积压。 默认值 默认情况下 repl-backlog-ttl设置为“ 3600 ” 例 repl-backlog-ttl 3600 表9 最后一个非常有趣的设置即为Redis Sentinel [5] 使用的从站副本分配优先级以便在主站无法正常工作时选择要升级为主站的从站。 具有较低优先级编号的从属服务器更适合提升例如如果有三个具有优先级10、100和25的从属服务器Redis Sentinel [5] 将选择一个具有优先级10最低的的从属服务器。 但是特殊优先级0表示从属服务器无法执行主机角色因此Redis Sentinel [5] 永远不会选择优先级为0的从属服务器进行升级。 设置 从属优先级 数字 描述 从属优先级是Redis在INFO输出中发布的整数。 默认值 默认情况下 slave-priority设置为100 例 slave-priority 100 表10 Redis Sentinel [5] 将在本教程的后面进行讨论。 [1] http://redis.io/topics/replication [2] http://redis.io/commands/slaveof [3] http://redis.io/commands/config-set [4] http://redis.io/commands/info [5] http://redis.io/topics/sentinel 翻译自: https://www.javacodegeeks.com/2015/09/redis-replication.htmlredis复制

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

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

相关文章

网站公司云建站怎么样亚网站建设

逻辑操作符 逻辑操作符有哪些&#xff1a; && 逻辑与 || 逻辑或区分逻辑与和按位与 区分逻辑或和按位或 1&2----->0 1&&2---->1 1|2----->3 1||2---->1逻辑与和或的特点&#xff1a; 360笔试题 #include <stdio.h&…

合水口网站建设网站站点创建成功是什么意思

安装环境&#xff1a; 本文是在win10系统安装上VMWare并配置Centos6.8虚拟机。 准备工作 1.安装VMWare虚拟机 1.1下载VMWare12资源链接&#xff1a;https://pan.baidu.com/s/1AhfMSDXLO-aA0eMqnuMWHg 提取码&#xff1a;iftd 1.2安装VMWare&#xff0c;在安装过程中需要输入密钥…

京东网站的建设与发展现状分析网站开发技术一般需要什么语言

一、软件功能测试   软件功能测试旨在验证软件是否按照需求规格说明书的要求正常工作。具体而言&#xff0c;功能测试会对软件的所有功能进行测试&#xff0c;以确保其满足用户的需求和预期。在进行功能测试时&#xff0c;根据需求规格说明书编写测试用例&#xff0c;并在测试…

网站开发框架文档邯郸恋家网

文章目录一、注册腾讯地图1. 申请开发者密钥&#xff08;key&#xff09;2. 开通webserviceAPI服务3. 下载SDK二、导入SDK2.1. 解压复制2.2. 页面导入三、实现3.1. 先创建实例。3.2. 获取经纬度3.3. 监控四、计算二点距离4.1. 官网地址4.2. 代码4.3. 测试一、注册腾讯地图 1. …

自己建设网站模版山东聊城建设学校官网

ABC322刷题记 T1.A A - First ABC 2。 妥妥的简单题…… 用find函数做就行。&#xff08;如果不存在那个子串就返回-1&#xff0c;否则返回第一次出现位置&#xff09; 注意题目中编号是从1开始的。 时间复杂度&#xff1a;O(log(n))。find函数有一定代价&#xff0c;我记…

外贸有哪些网站陕西西安网站建设公司排名

文章目录 1. 题目描述2.题目解析 题目来源&#xff1a; 牛客网…二叉搜索树与双向链表 1. 题目描述 输入一棵二叉搜索树&#xff0c;将该二叉搜索树转换成一个排序的双向链表。如下图所示 数据范围&#xff1a;输入二叉树的节点数 0≤n≤1000&#xff0c;二叉树中每个节点的值…

珠海网站建设乐云seo在线制作设计企业品牌商标

前言 安装心得 经过多种方式操作&#xff0c;发现二进制方法安装太复杂&#xff0c;证书生成及其手工操作太多了&#xff0c;没有安装成功&#xff1b;helm方式的安装&#xff0c;v1.7.0的chart包执行安装会报错&#xff0c;手工修复了报错并修改了镜像地址&#xff0c;还是各…

网站横幅代码一般找人做网站多少钱

《C语言21(顺序结构程序设计之1).ppt》由会员分享&#xff0c;可在线阅读&#xff0c;更多相关《C语言21(顺序结构程序设计之1).ppt(28页珍藏版)》请在人人文库网上搜索。1、上一节我们学了,C语言程序的结构 C语言程序的书写规范,第2章 最简单的C程序设计,-顺序程序设计,C程序常…

西部数码做的网站打不开网站做子页跳转到首页

摘要&#xff1a;Go 语言因其简洁、高效和强大的并发模型而受到越来越多开发者的青睐。为了提高 Go 语言开发的效率&#xff0c;选择一款合适的集成开发环境&#xff08;IDE&#xff09;至关重要。本文将详细介绍几种 Go 语言开发常用的 IDE&#xff0c;包括 Visual Studio Cod…

平湖网站制作wordpress更改注册地址

摘要&#xff1a; 2017年5月&#xff0c;Google、IBM和Lyft发布了开源服务网格框架Istio&#xff0c;提供微服务的连接、管理、监控和安全保护。Istio提供了一个服务间通信的基础设施层&#xff0c;解耦了应用逻辑和服务访问中版本管理、安全防护、故障转移、监控遥测等切面的问…

台州网站制作台州网站建设考研门户网站的建设

TypeScript 2.7版本已经发布了&#xff0c;新增了几个主要功能特性并进行了一些bug的修正。其中一些亮点包括对类属性的赋值检查、固定长度的元组和改进对象文字的类型推断。总的来说&#xff0c;这个版本对类型系统、ES2015特性和总体的TypeScript开发者体验都进行了改进优化。…

建设企业网站的意义做网站南宁

正题 题目链接:https://www.luogu.com.cn/problem/AT2567 题目大意 长度为nnn的包含三种颜色RGBRGBRGB的序列&#xff0c;mmm个限制[l,r,k][l,r,k][l,r,k]表示区间l∼rl\sim rl∼r恰好有kkk种颜色。 求方案数 1≤n≤3001\leq n\leq 3001≤n≤300 解题思路 很水的题是吧&…

网站做好怎么推广网站源码怎么做

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一个多模块项目通过一个父POM 引用一个或多个子模块来定义。父项目&#xff0c;通过以下配置&#xff0c;将子项目关联。 <packaging…

网站建设要用H5吗网站建设 开发的团队需要几个人

LabVIEW开发基于图像处理的车牌检测系统 自动车牌识别的一般步骤是图像采集、去除噪声的预处理、车牌定位、字符分割和字符识别。结果主要取决于所采集图像的质量。在不同照明条件下获得的图像具有不同的结果。在要使用的预处理技术中&#xff0c;必须将彩色图像转换为灰度&am…

保定网站制作公司版面设计的概念是什么

有时为了浏览体验的需要&#xff0c;需要让用户自行调整页面的字体大小。这里介绍下用jquery实时改变网页字体大小的方法。分别定义三个class&#xff1a;increaseFont、decreaseFont、resetFont 的元素。1&#xff0c;添加click事件复制代码 代码示例:/*对页面上的字体增大、缩…

建设网站科目为什么做的网站有的有弹窗有的没有

matlab中Signal Editor定义梯形信号输出矩形信号&#xff0c;可以通过如下勾选差值数据实现梯形信号输出。

汉服销售网站建设百度推广培训机构

绿*泡*泡VX&#xff1a; neituijunsir 交流裙 &#xff0c;内推/实习/校招汇总表格 1、校招&#xff5c;极智嘉2024届秋招补录全面开启&#xff08;内推&#xff09; 校招&#xff5c;极智嘉2024届秋招补录全面开启&#xff08;内推&#xff09; 2、校招&#xff5c;零跑汽…

网站建设以及运营方面岳阳seo优化

文章目录 请介绍下面代码的 整体流程 的和要实现的目的 像debug一样解释下面的代码

金融网站搭建网站备案地址

虽然图标快捷方式使你移动鼠标双击就打开目标&#xff0c;但是你还是需要先定位到它。而在终端Terminal中你只需要输入一个自定义命令就能一步到位。 要在 Ubuntu 中创建你自己的命令或别名&#xff0c;你可以使用主目录中的“.bashrc”文件。 以下是创建通过 Wine 运行 Photo…

国家建设工程信息网站推广竞价

先定义变量----用的是Vue2 &#xff0c;以下在vue的data&#xff1a;{}中定义--------------//空格占位符 headerTopTitle: [患者信息, , , , , , , , , 入出院信息, , , , , , , 病案首页中的出院主要诊断, ,出院其他诊断&#xff08;病案首页中原始信息&#xff09;, , , , ,…