网站上线前做环境部署seo网站优化培

news/2025/10/3 5:56:18/文章来源:
网站上线前做环境部署,seo网站优化培,河南智慧团建登录入口官网,网站建设企业网站价格1.sentine介绍 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案#xff0c;当用Redis做Master-slave的高可用方案时#xff0c;假如master宕机了#xff0c;Redis本身(包括它的很多客户端)都没有实现自动进行主备切换#xff0c;而Redis-sentinel本身也是一个独立运行…1.sentine介绍 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案当用Redis做Master-slave的高可用方案时假如master宕机了Redis本身(包括它的很多客户端)都没有实现自动进行主备切换而Redis-sentinel本身也是一个独立运行的进程它能监控多个master-slave集群发现master宕机后能进行自动切换。 sentinel的构造 Sentinel 是一个监视器它可以根据被监视实例的身份和状态来判断应该执行何种动作。 sentinel的功能 1监控MonitoringSentinel会不断地检查你的主服务器和从服务器是否运作正常。 2提醒Notification当被监控的某个Redis服务器出现问题时Sentinel可以通过API向管理员或者其他应用程序发送通知。 3自动故障迁移Automatic failover当一个主服务器不能正常工作时Sentinel会开始一次自动故障迁移操作它会将失效主服务器的其中一个从服务器升级为新的主服务器并让失效主服务器的其他从服务器改为复制新的主服务器当客户端试图连接失效的主服务器时集群也会向客户端返回新主服务器的地址使得集群可以使用新主服务器代替失效服务器。 发现并连接主服务器 Sentinel通过用户给定的配置文件来发现主服务器。 Sentinel会与被监视的主服务器创建两个网络连接命令连接用于向主服务器发送命令。订阅连接用于订阅指定的频道从而发现监视同一主服务器的其他Sentinel。 配置文件示例 redis-sentinel sentinel.conf ############ master1 configure ##############sentinel monitor master1 127.0.0.1 6379 2sentinel down-after-milliseconds master1 30000sentinel parallel-syncs master1 1sentinel failover-timeout master1 900000 ############ master2 configure ##############sentinel monitor master2 127.0.0.1 12345 5sentinel down-after-milliseconds master2 50000sentinel parallel-syncs master2 5sentinel failover-timeout master2 450000 发现并连接从服务器 Sentinel通过向主服务器发送INFO命令来自动获得所有从服务器的地址 跟主服务器一样Sentinel 会与每个被发现的从服务器创建命令连接和订阅连接。 发现其他sentinel Sentinel 会通过命令连接向被监视的主从服务器发送 “HELLO” 信息该消息包含 Sentinel 的 IP、端口号、ID 等内容以此来向其他 Sentinel 宣告自己的存在。与此同时Sentinel 会通过订阅连接接收其他 Sentinel 的“HELLO” 信息以此来发现监视同一个主服务器的其他 Sentinel 。 1一个Sentinel可以与其他多个Sentinel进行连接各个Sentinel之间可以互相检查对方的可用性并进行信息交换。你无须为运行的每个 Sentinel 分别设置其他 Sentinel 的地址因为Sentinel可以通过发布与订阅功能来自动发现正在监视相同主服务器的其他 Sentinel 这一功能是通过向频道__sentinel__:hello发送信息来实现的。 2与此类似你也不必手动列出主服务器属下的所有从服务器因为 Sentinel 可以通过询问主服务器来获得所有从服务器的信息。每个Sentinel会以每两秒一次的频率通过发布与订阅功能向被它监视的所有主服务器和从服务器的__sentinel__:hello频道发送一条信息信息中包含了Sentinel的IP地址、端口号和运行IDrunid。 3每个Sentinel都订阅了被它监视的所有主服务器和从服务器的__sentinel__:hello 频道查找之前未出现过的sentinellooking for unknown sentinels。当一个Sentinel发现一个新的Sentinel时它会将新的Sentinel添加到一个列表中这个列表保存了Sentinel已知的监视同一个主服务器的所有其他 Sentinel 。Sentinel发送的信息中还包括完整的主服务器当前配置configuration。如果一个 Sentinel 包含的主服务器配置比另一个Sentinel发送的配置要旧那么这个 Sentinel 会立即升级到新配置上。 4在将一个新 Sentinel 添加到监视主服务器的列表上面之前Sentinel 会先检查列表中是否已经包含了和要添加的 Sentinel 拥有相同运行 ID 或者相同地址包括 IP 地址和端口号的 Sentinel 如果是的话Sentinel 会先移除列表中已有的那些拥有相同运行 ID或者相同地址的 Sentinel 然后再添加新 Sentinel 。 多个sentinel之间连接 Sentinel之间只会互相创建命令连接用于进行通信。因为已经有主从服务器作为发送和接收HELLO信息的中介所以Sentinel之间不会创建订阅连接。 检测实例的状态 Sentinel使用PING命令来检测实例的状态如果实例在指定的时间内没有返回回复或者返回错误的回复那么该实例会被 Sentinel 判断为下线。 Redis的Sentinel中关于下线down有两个不同的概念 1主观下线Subjectively Down 简称 SDOWN指的是单个 Sentinel 实例对服务器做出的下线判断。 2客观下线Objectively Down简称 ODOWN指的是多个Sentinel实例在对同一个服务器做出SDOWN判断并且通过SENTINEL is-master-down-by-addr命令互相交流之后得出的服务器下线判断。一个 Sentinel可以通过向另一个Sentinel发送SENTINEL is-master-down-by-addr命令来询问对方是否认为给定的服务器已下线。 如果一个服务器没有在 master-down-after-milliseconds 选项所指定的时间内对向它送PING命令的Sentinel返回一个有效回复valid reply那么Sentinel就会将这个服务器标记为主观下线。 服务器对PING命令的有效回复可以是以下三种回复的其中一种: 1)返回 PONG 。 2)返回 -LOADING 错误。 3)返回 -MASTERDOWN 错误。 如果服务器返回除以上三种回复之外的其他回复又或者在指定时间内没有回复Ping命令那么Sentinel认为服务器返回的回复无效non-valid。 注意一个服务器必须在master-down-after-milliseconds毫秒内一直返回无效回复才会被Sentinel标记为主观下线。 举个例子如果master-down-after-milliseconds选项的值为30000毫秒30秒那么只要服务器能在每29秒之内返回至少一次有效回复这个服务器就仍然会被认为是处于正常状态的。 从主观下线状态切换到客观下线状态并没有使用严格的法定人数算法strong quorum algorithm而是使用了流言协议如果 Sentinel 在给定的时间范围内从其他Sentinel那里接收到了足够数量的主服务器下线报告那么Sentinel就会将主服务器的状态从主观下线改变为客观下线。如果之后其他Sentinel不再报告主服务器已下线那么客观下线状态就会被移除。 客观下线条件只适用于主服务器对于任何其他类型的Redis实例Sentinel在将它们判断为下线前不需要进行协商所以从服务器或者其他 Sentinel 永远不会达到客观下线条件。 只要一个Sentinel发现某个主服务器进入了客观下线状态这个Sentinel就可能会被其他Sentinel推选出并对失效的主服务器执行自动故障迁移操作。 故障转移FAILOVER 一次故障转移操作由以下步骤组成 1发现主服务器已经进入客观下线状态。 2基于Raft leader election协议 进行投票选举 3如果当选失败那么在设定的故障迁移超时时间的两倍之后重新尝试当选。如果当选成功那么执行以下步骤。 4选出一个从服务器并将它升级为主服务器。 5向被选中的从服务器发送 SLAVEOF NO ONE 命令让它转变为主服务器。 6通过发布与订阅功能将更新后的配置传播给所有其他Sentinel其他Sentinel对它们自己的配置进行更新。 7向已下线主服务器的从服务器发送SLAVEOF命令让它们去复制新的主服务器。 8当所有从服务器都已经开始复制新的主服务器时 leader Sentinel 终止这次故障迁移操作 每当一个Redis实例被重新配置reconfigured—— 无论是被设置成主服务器、从服务器、又或者被设置成其他主服务器的从服务器 —— Sentinel 都会向被重新配置的实例发送一个CONFIG REWRITE命令从而确保这些配置会持久化在硬盘里。 Sentinel使用以下规则来选择新的主服务器1在失效主服务器属下的从服务器当中那些被标记为主观下线、已断线、或者最后一次回复PING命令的时间大于五秒钟的从服务器都会被淘汰。2在失效主服务器属下的从服务器当中那些与失效主服务器连接断开的时长超过down-after选项指定的时长十倍的从服务器都会被淘汰。3在经历了以上两轮淘汰之后剩下来的从服务器中我们选出复制偏移量replication offset最大的那个从服务器作为新的主服务器如果复制偏移量不可用或者从服务器的复制偏移量相同那么带有最小运行ID的那个从服务器成为新的主服务器。 Sentinel自动故障迁移的一致性特质1Sentinel自动故障迁移使用Raft算法来选举领头leaderSentinel 从而确保在一个给定的周期epoch里只有一个领头产生。2这表示在同一个周期中 不会有两个 Sentinel 同时被选中为领头并且各个 Sentinel 在同一个节点中只会对一个领头进行投票。3更高的配置节点总是优于较低的节点因此每个 Sentinel 都会主动使用更新的节点来代替自己的配置。简单来说我们可以将Sentinel配置看作是一个带有版本号的状态。一个状态会以最后写入者胜出last-write-wins的方式也即是最新的配置总是胜出传播至所有其他Sentinel。 举个例子1当出现网络分割network partitions时一个Sentinel可能会包含了较旧的配置而当这个Sentinel接到其他Sentinel发来的版本更新的配置时Sentinel就会对自己的配置进行更新。 2如果要在网络分割出现的情况下仍然保持一致性 那么应该使用 min-slaves-to-write 选项让主服务器在连接的从实例少于给定数量时停止执行写操作与此同时应该在每个运行Redis主服务器或从服务器的机器上运行Redis Sentinel进程。 Sentinel状态的持久化1Sentinel 的状态会被持久化在 Sentinel 配置文件里面。2每当Sentinel接收到一个新的配置或者当领头Sentinel为主服务器创建一个新的配置时这个配置会与配置节点一起被保存到磁盘里面。3这意味着停止和重启Sentinel进程都是安全的。 Sentinel在非故障迁移的情况下对实例进行重新配置1即使没有自动故障迁移操作在进行Sentinel总会尝试将当前的配置设置到被监视的实例上面。特别是根据当前的配置如果一个从服务器被宣告为主服务器那么它会代替原有的主服务器成为新的主服务器并且成为原有主服务器的所有从服务器的复制对象。2那些连接了错误主服务器的从服务器会被重新配置 使得这些从服务器会去复制正确的主服务器。3不过在以上这些条件满足之后Sentinel在对实例进行重新配置之前仍然会等待一段足够长的时间确保可以接收到其他Sentinel发来的配置更新从而避免自身因为保存了过期的配置而对实例进行了不必要的重新配置。 #######sentinel实战及配置讲解 环境准备 sentinel配置   #创建sentinel的配置文件目录[rootdb01 ~]# mkdir /etc/redis/26380#进入sentinel配置目录[rootdb01 ~]# cd /etc/redis/26380/#编辑配置文件[rootdb01 26380]# vim sentinel.confport 26380dir /etc/redis/26380sentinel monitor mymaster 127.0.0.1 6379 1sentinel down-after-milliseconds mymaster 5000#启动sentinel[rootdb01 26380]# redis-sentinel /etc/redis/26380/sentinel.conf  sentinel切换测试   #连接redis主库[rootdb01 26380]# redis-cli -p 6379#关闭主库127.0.0.1:6379 SHUTDOWN#登录原从库6380[rootdb01 26380]# redis-cli -p 6380#查看主从信息127.0.0.1:6380 info replication# Replicationrole:master //由此可见原从库6380已经被提升为主库connected_slaves:1slave0:ip127.0.0.1,port6381,stateonline,offset3552,lag0 //从库变成了6381master_repl_offset:3566repl_backlog_active:1repl_backlog_size:1048576repl_backlog_first_byte_offset:2repl_backlog_histlen:3565 #开启旧主库6379[rootdb01 26380]# redis-server /etc/redis/6379/redis.conf#连接旧主库6379[rootdb01 26380]# redis-cli -p 6379#查看主从信息127.0.0.1:6379 info replication# Replicationrole:slave //角色变成了slavemaster_host:127.0.0.1master_port:6380 //主库的端口是6380master_link_status:upmaster_last_io_seconds_ago:2master_sync_in_progress:0slave_repl_offset:37819slave_priority:100slave_read_only:1connected_slaves:0master_repl_offset:0repl_backlog_active:0repl_backlog_size:1048576repl_backlog_first_byte_offset:0repl_backlog_histlen:0 #在新主6380上查看主从信息[rootdb01 26380]# redis-cli -p 6380127.0.0.1:6380 info replication# Replicationrole:masterconnected_slaves:2slave0:ip127.0.0.1,port6381,stateonline,offset45288,lag1slave1:ip127.0.0.1,port6379,stateonline,offset45421,lag0 //6379自动加入了集群master_repl_offset:45421repl_backlog_active:1repl_backlog_size:1048576repl_backlog_first_byte_offset:2repl_backlog_histlen:45420 sentinel monitor mymaster 127.0.0.1 6379 2Sentinel 去监视一个名为mymaster的主服务器这个主服务器的IP地址为127.0.0.1端口号为6379而将这个主服务器判断为失效至少需要2个Sentinel同意只要同意Sentinel的数量不达标自动故障迁移就不会执行不过要注意无论你设置要多少个Sentinel同意才能判断一个服务器失效一个 Sentinel 都需要获得系统中多数majority Sentinel 的支持才能发起一次自动故障迁移并预留一个给定的配置节点configuration Epoch一个配置节点就是一个新主服务器配置的版本号。换句话说在只有少数minoritySentinel进程正常运作的情况下Sentinel 是不能执行自动故障迁移的。 sentinel down-after-milliseconds mymaster 5000指定了Sentinel认为服务器已经断线所需的毫秒数。如果服务器在给定的毫秒数之内没有返回Sentinel发送的Ping命令的回复或者返回一个错误那么Sentinel将这个服务器标记为主观下线subjectively down简称SDOWN。不过只有一个Sentinel将服务器标记为主观下线并不一定会引起服务器的自动故障迁移只有在足够数量的Sentinel都将一个服务器标记为主观下线之后服务器才会被标记为客观下线objectively down 简称 ODOWN 这时自动故障迁移才会执行。 sentinel failover-timeout mymaster 180000  自动故障切换的超时时间 sentinel parallel-syncs mymaster 1 在执行故障转移时最多可以有多少个从服务器同时对新的主服务器进行同步这个数字越小完成故障转移所需的时间就越长。如果从服务器被设置为允许使用过期数据集参见对 redis.conf 文件中对 slave-serve-stale-data 选项的说明那么你可能不希望所有从服务器都在同一时间向新的主服务器发送同步请求因为尽管复制过程的绝大部分步骤都不会阻塞从服务器但从服务器在载入主服务器发来的 RDB 文件时仍然会造成从服务器在一段时间内不能处理命令请求如果全部从服务器一起对新的主服务器进行同步那么就可能会造成所有从服务器在短时间内全部不可用的情况出现。可以通过将这个值设为1来保证每次只有一个从服务器处于不能处理命令请求的状态。 sentinel管理命令不常用 #连接sentinel管理端口[rootdb01 26380]# redis-cli -p 26380#检测状态返回PONG127.0.0.1:26380 PINGPONG#列出所有被监视的主服务器127.0.0.1:26380 SENTINEL masters#列出所有被监视的从服务器127.0.0.1:26380 SENTINEL slaves mymaster#返回给定名字的主服务器的IP地址和端口号127.0.0.1:26380 SENTINEL get-master-addr-by-name mymaster1) 127.0.0.12) 6380#重置所有名字和给定模式127.0.0.1:26380 SENTINEL reset mymaster#当主服务器失效时在不询问其他Sentinel意见的情况下强制开始一次自动故障迁移。127.0.0.1:26380 SENTINEL failover mymaster                              转载于:https://www.cnblogs.com/fangdecheng/p/10121374.html

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

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

相关文章

返利网一类的网站怎么做做网站时网页中格式对不齐怎么办

专业课128分总分400南京理工大学818信号系统与数字电路南理工电光院考研经验分享,希望自己的经历对大家有借鉴。 我是在六月底确认自己保不上研然后专心备考的,时间确实比较紧张。虽然之前暑假看了一点高数,但因为抱有保研的期望&#xff0c…

昆山网站推广手机界面设计网站

树莓派配置双网卡分别为AD HOC和AP模式 需求说明:为了实现分级网络管理,将多个无人机分簇,簇间使用AD HOC进行无中心自组织的网络,簇内使用AP-AC模式进行中心化网络。因此,需要配置一台设备,同时完成AD HOC…

网站建设技术知识网站是广西住房和城乡建设厅

Shell脚本之if的用法 1、if语句的格式2、if语句的conditon介绍3、应用举例 1、if语句的格式 1) if-elif-else语法格式 if [ condition1 ]; then # 执行条件1的代码块 elif [ condition2 ]; then # 执行条件2的代码块 else # 执行条件都不满足时的代码块 …

网站项目建设措施如何查看网站的空间

Selenium自动化入门 1、Selenium概述2、Selenium环境搭建3、Selenium基本操作4、网页元素定位5、操作Cookie6、标签页管理 1、Selenium概述 Selenium(Web Browser Automation)的初衷是Web应用自动化测试。Selenium广泛应用于爬虫,爬虫需要让浏…

国内外网站开发的现状微信开放平台怎么申请

1、受控组件在 React 中,可变状态(mutable state)通常保存在组件的 state 属性中,并且只能通过使用 setState()来更新。state:唯一数据源渲染表单的 React 组件还控制着用户输入过程中表单发生的操作。被 React 以这种方式控制取值的表单输入…

网站建设播放vr视频教程北京seo排名

点击上方☝SpringForAll社区 轻松关注!及时获取有趣有料的技术文章本文来源:https://www.cnblogs.com/ITtangtang/p/7602363.html一、线程安全性定义:多个线程之间的操作无论采用何种执行时序或交替方式,都要保证不变性条件不被破…

石材网站源码酷炫网站源码

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入:p [1,2,3], q [1,2,3] 输出:true示例 2&a…

怎么用网站做word文件格式招商网站大全免费

超图iClient3DforCesium地形、影像、模型、在线影像交互示例 描述示例代码 描述 数据源:基于iserver发布的三维场景(地形、影像、BIM模型) 在线arcgis影像 应用:目录树展示源数据列表、目录树控制源数据可视化结果显隐、BIM模型点选查询关联属性 示例代…

请问做网站怎么赚钱店铺设计素材

一,初探,根据现象发现问题 chrome的performance知道很久了,但总是没有特别权威且跟上时代的学习资料,这次痛定思痛,直接看英文文档,一点点把这块啃掉,本笔记基于Chrome 59 step 1: 隐身模式打开…

有做游戏广告的网站网站建设论文的部首

光的相关单位及换算方法光源在单位时间、向周围空间辐射并引起视觉的能量,称为光通量。用Φ表示,单位为流明(Lm)。单位面积上接受的光通量称为照度,用E表示,单位勒克司(Lx)EΦ/SΦ-光通量(Lm)S-受照面积(㎡…

网站流量导入是什么意思最专业的网站设计

你知道什么是一次消谐器吗?它是一种保护装置,用于消除电力系统中的谐振过电压,保护设备的安全可靠运行。那么一次消谐器有什么作用呢?接下来我会为你详细介绍一下。 一次消谐器的设计原理是利用其非线性电阻特性,在谐振…

针对网站开发者的问答网站个人网站做淘宝客违规

简介:本文分享了阿里巴巴服务网格技术三位一体战略背后的思考和实践,关于阿里云服务网格 ASM 的一些产品功能,包括最近发布的一些功能。 作者:宗泉、宇曾 阿里巴巴三位一体战略 阿里云内部很早就提出了开源、自研、商业化三位一…

网站平台建设论文建设银行u盾用网站打不开

随着信息技术的快速发展,企业的数据安全问题日益凸显。数据安全不仅关乎企业的商业机密,还涉及到客户的隐私和信任。因此,企业必须采取有效的防范措施,确保数据安全。本文将探讨企业防范数据安全的重要性,并介绍一些实…

手机网站建设的公司西安网站建设网络

学习使用Flutter 进行 虚线 自定义控件 练习 // 自定义虚线 (默认是垂直方向) class DashedLind extends StatelessWidget {final Axis axis; // 虚线方向final double dashedWidth; // 根据虚线的方向确定自己虚线的宽度final double dashedHeight; //…

网站怎么做首页比较好网站后台添加图片链接

🎥 开场白: “大家好,我是你们的科技小助手,今天给大家带来一个重要的信息更新!” 🌐 引入话题: “最近,许多朋友可能已经听说了,OpenAI决定停止对中国的服务。但别担心…

深圳专门做兼职的网站用织梦建设网站的步骤

常用的对称加密算法有:DES、3DES、RC2、RC4、AES 常用的非对称加密算法有:RSA、DSA、ECC 使用单向散列函数的加密算法(摘要算法):MD5、SHA 密码存储加密 md5 32位或者16位 0-9 a-f 所组成的字符串 不可…

html代码跟网站运营的关系静态网站开发软件

文章目录 前言Widget Box(工具箱)对象查看器Qt Design属性编译器sizePolicy内容 信号/槽编辑器资源浏览器ui文件 前言 Widget Box(工具箱) 提供很多控件 对象查看器 对象查看区域,可以查看主窗口放置对象的列表 …

员工支付做网站的费用分录郑州网站建设方案服务

全数字实时仿真平台 SkyEye,中文全称天目全数字实时仿真软件,应用软件仿真技术,逼真地模拟出被测软件的物理环境。用图形化方式构建虚拟目标系统,有效降低了硬件工程师和软件工程师之间的沟通成本,软件工程师可以不依…

模板和网站可以分开吗搜索排名的影响因素

Vim 命令 (建议可以看看: Practical vim 里面有很多实用的技巧, 据说已经有人翻译并出版了,英文的电子版自己网上搜索即可) 移动:(注意是移动,也就是所谓的剪切再粘贴) m 例如: 将第10至20行内容移动到50行处 进入 normal mod: 命令: : 10,20m50 Enter (注意" : ")…

营销型网站应必备的七大功能绿色食品网站建设论文

截止到上一篇,终于通过飞书 API 完整获取到飞书多维表的数据。但是,有些场景,比如数据源会出现脏数据,毕竟如果是运营过程多人协作维护的数据,要想保持数据完美简直是天方夜谭!再比如我们不需要完整的数据&…