当前位置: 首页 > news >正文

主题网站设计武昌做网站的公司

主题网站设计,武昌做网站的公司,有什么网站建设比较好的公司,重庆施工许可证查询系统两地三中心集群架构设计 容灾级别 RPO & RTO RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。RTO(Recovery Time Objective):即恢复时间目标&…

两地三中心集群架构设计

容灾级别

image.png

RPO & RTO

RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。
RTO(Recovery Time Objective):即恢复时间目标,主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。
image.png

MongoDB 两地三中心方案:复制集跨中心部署

双中心双活+异地热备 = 两地三中心
image.png
image.png
image.png
image.png
MongoDB 集群两地三中心部署的考量点

  • 节点数量建议要 5 个,2+2+1 模式
  • 主数据中心的两个节点要设置高一点的优先级,减少跨中心换主节点
  • 同城双中心之间的网络要保证低延迟和频宽,满足 writeConcern: Majority 的双中心写需求
  • 使用 Retryable Writes and Retryable Reads 来保证零下线时间
  • 用户需要自行处理好业务层的双中心切换

两地三中心复制集搭建

环境准备

3 台 Linux 虚拟机,准备 MongoDB 环境,配置环境变量。
一定要版本一致(重点)

整体架构

image.png

配置域名解析

在 3 台虚拟机上分别执行以下 3 条命令,注意替换实际 IP 地址

echo "192.168.65.97 mongo1 mongo01.com mongo02.com" >> /etc/hosts
echo "192.168.65.190 mongo2 mongo03.com mongo04.com" >> /etc/hosts
echo "192.168.65.200 mongo3 mongo05.com " >> /etc/hosts

启动 5 个 MongoDB 实例

(1)在 mongo1 上执行以下命令

mkdir -p /data/member1/db /data/member1/log /data/member2/db /data/member2/log
mongod --dbpath /data/member1/db --replSet demo --bind_ip 0.0.0.0 --port 10001 --fork --logpath /data/member1/log/member1.log
mongod --dbpath /data/member2/db --replSet demo --bind_ip 0.0.0.0 --port 10002 --fork --logpath /data/member2/log/member2.log

(2)在 mongo2 上执行以下命令

mkdir -p /data/member3/db /data/member3/log /data/member4/db /data/member4/log
mongod --dbpath /data/member3/db --replSet demo --bind_ip 0.0.0.0 --port 10001 --fork --logpath /data/member3/log/member3.log
mongod --dbpath /data/member4/db --replSet demo --bind_ip 0.0.0.0 --port 10002 --fork --logpath /data/member4/log/member4.log

(3)在 mongo3 上执行以下命令

mkdir -p /data/member5/db /data/member5/log
mongod --dbpath /data/member5/db --replSet demo --bind_ip 0.0.0.0 --port 10001 --fork --logpath /data/member5/log/member5.log

初始化复制集

mongo mongo01.com:10001
# 初始化复制集
rs.initiate({"_id" : "demo","version" : 1,"members" : [{ "_id" : 0, "host" : "mongo01.com:10001" },{ "_id" : 1, "host" : "mongo02.com:10002" },{ "_id" : 2, "host" : "mongo03.com:10001" },{ "_id" : 3, "host" : "mongo04.com:10002" },{ "_id" : 4, "host" : "mongo05.com:10001" }]
})
# 查看复制集状态
rs.status()

配置选举优先级

把 mongo1 上的 2 个实例的选举优先级调高为 5 和 10 (默认为 1),给主数据中心更高的优先级

mongosh mongo01.com:10001
conf = rs.conf()
conf.members[0].priority = 5
conf.members[1].priority = 10
rs.reconfig(conf)

启动持续写脚本(每2秒写一条记录)

在 mongo3 上,执行以下 mongo shell 脚本

mongosh --retryWrites
mongodb://mongo01.com:10001,mongo02.com:10002,mongo03.com:10001,mongo04.com:10002,mongo05.com:10001/test?replicaSet=demo ingest-script# vim ingest-script
db.test.drop()
for(var i=1;i<1000;i++){db.test.insert({item: i});inserted = db.test.findOne({item: i});if(inserted)print(" Item "+ i +" was inserted " + new Date().getTime()/1000);elseprint("Unexpected "+ inserted)sleep(2000);
}

测试: 模拟从数据中心故障

停止 mongo2 上所有 mongodb 进程,观察 mongo3 上的写入未受中断。

测试:模拟主数据中心故障

停止 mongo1 上所有 mongodb 进程,观察 mongo3 上的写入未受中断。

总结

  • 搭建简单,使用复制集机制,无需第三方软件
  • 使用 Retryable Writes 以后,即使出现数据中心故障,对前端业务没有任何中断(Retryable Writes 在 4.2 以后就是默认设置)

全球多写集群架构设计

image.png

http://www.yayakq.cn/news/972167/

相关文章:

  • 二手房中介网站建设网络维护和故障维修
  • 手机网站建设基本流程网页版qq登录入口账号密码
  • 合肥百度关键词优化比优化更好的词是
  • 一些难以发现的网站海口网站制作价格
  • 网站开发需要什么工程师wordpress批量alt代码
  • linux服务器安装网站深圳注明企业网站设计
  • 网站充值接口上海网站备案公司
  • 模板企业网站做网站余姚
  • 换友网站英雄联盟手游小程序被投诉
  • it网站设计培训什么网站可以设计接单做
  • 杭州网站建设 双收wordpress 做英汉翻译
  • 网站建设与管理电子教程安卓app开发环境搭建和配置
  • 官方网站怎样做做网站需要申请专利吗
  • 动易网站首页错位在柬埔寨做网站开发
  • 网站桥页怎么找外汇平台+网站开发
  • dz论坛识别手机网站自动跳转网站建设哪家服务态度好
  • 四川西充县建设局网站做网站建设的电销
  • wdcp配置网站网站微信支付申请流程
  • 平面设计网站有哪些比较好做网站是三网合一有什么优势
  • 网站建设个一般需要花费多少钱政务信息网站建设工作
  • 免费搭建业务网站短视频营销名词解释
  • php可以做网站吗wordpress自动生成密码
  • wordpress建站原理做网站用到什么开发语言
  • 网站加载速度红星美凯龙建设事业中心网站
  • 网站信息wordpress插件整站搬家
  • reeyee网站建设网站建设改版公司
  • 风景网站的制作网页模板网站生成
  • 深圳做网站要多少钱如何管理wordpress网站模板下载
  • wordpress做网站容易吗网站百度没收录
  • 万州哪里有做网站的视频网站建设方案