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

大渡口集团网站建设网站建设对企业的好处有哪些

大渡口集团网站建设,网站建设对企业的好处有哪些,上海中小企业发展服务中心,自己如何建设一个彩票网站broker主从复制机制 同步复制#xff1a; 等Master和Slave均写成功后#xff0c;才反馈给客户端写成功状态#xff1b; 如果Master出故障#xff0c; Slave上有全部的备份数据#xff0c;容易恢复#xff0c;但是同步复制会增大数据写入延迟#xff0c;降低系统吞吐量。…broker主从复制机制 同步复制 等Master和Slave均写成功后才反馈给客户端写成功状态 如果Master出故障 Slave上有全部的备份数据容易恢复但是同步复制会增大数据写入延迟降低系统吞吐量。 异步复制 只要Master写成功即可反馈给客户端写成功状态。后面再通过异步的方式和slave同步。 较低的延迟和较高的吞吐量如果master故障有可能因为某些数据没有被写入slave造成丢失。 复制流程分为两步元数据同步、消息数据复制 元数据同步Slave Broker 定时任务每隔 10 秒会同步元数据包括主题消费进度延迟消费进度消费者配置。 同步主题时, Slave Broker 向 Master Broker 发送 RPC 请求返回数据后首先加入本地缓存里然后持久化到本地。 消息数据复制 1、Master 启动监听指定端口 2、Slave 启动 HaClient 服务和 Master 创建 TCP 链接 3、Slave 向 Master 上报存储进度 4、Master 接收进度消息文件中检索该偏移量后的所有消息并传输给 Slave 5、Slave 接收到数据后将消息数据 append 到本地的消息存储。 Master和Slave之间是怎么同步数据的呢 通过raft协议 在broker收到消息后会被标记为uncommitted状态 然后会把消息发送给所有的slave slave在收到消息之后返回ack响应给master master在收到超过半数的ack之后把消息标记为committed 发送committed消息给所有slaveslave也修改状态为committed 工作流程 1、启动NameServerNameServer启动后监听端口等待Broker、Producer、Consumer连上来相当于一个路由控制中心。 2、Broker启动跟所有的NameServer保持长连接定时发送心跳包。心跳包中包含当前Broker信息(IP端口等)以及存储所有Topic信息。注册成功后NameServer集群中就有Topic跟Broker的映射关系。 3、收发消息前先创建Topic创建Topic时需要指定该Topic要存储在哪些Broker上也可以在发送消息时自动创建Topic。 4、Producer发送消息启动时先跟NameServer集群中的其中一台建立长连接并从NameServer中获取当前发送的Topic存在哪些Broker上轮询从队列列表中选择一个队列然后与队列所在的Broker建立长连接从而向Broker发消息。 5、Consumer跟Producer类似跟其中一台NameServer建立长连接获取当前订阅Topic存在哪些Broker上然后直接跟Broker建立连接通道开始消费消息。 Master支持读和写Slave仅支持读也就是 Producer只能和Master连接写入消息Consumer可以连接 Master也可以连接Slave来读取消息。 持久化机制刷盘 同步刷盘在返回写成功状态时消息已经被写入磁盘。具体流程是消息写入内存的PAGECACHE后立刻通知刷盘线程刷盘 然后等待刷盘完成刷盘线程执行完成后唤醒等待的线程返回消息写成功的状态。响应时间比异步多10%用在对消息可靠性比较高的 异步刷盘在返回写成功状态时消息可能只是被写入了内存的PAGECACHE写操作的返回快吞吐量大当内存里的消息量积累到一定程度时统一触发写磁盘动作快速写入。用在吞吐量比较高的 配置Broker配置文件里的flushDiskTypeSYNC_FLUSH同步刷盘、ASYNC_FLUSH异步刷盘 如何保证消息不丢失保证消息的可用性/可靠性 producer消息成功发送 同步发送broker返回成功后表示数据送到了 broker消息持久化 消息持久化到commitLog 刷盘同步刷盘和异步刷盘将消息存储 master和slave的同步机制同步双写可以保证在master宕机时slave还可以有消息给consumer消费。 consumer标记已经消费的消息offset consumer中也保存了一个offset用来表示消费成功却已经发回broker的消息下标发回失败时也会定时重试offset是持久化的。 消息存储结构 CommitLog 消息主体与元数据的存储主体文件默认大小是1GCommitLog 存储的数据是在当前这个broker中的所有的topic的数据 consumerQueue 只记录具体某个topic下的数据一个topic下有多个consumerQueue作为消费索引它记录了指定topic的队列消息在CommitLog中的位置物理位置偏移量offset indexFile indexes 里记录了 key的hash值在commitLog中的偏移量与 beginTimestamp的差值下一个索引的值记录key和offset的对应关系。 零拷贝 RocketMQ为什么速度快 是因为使用了顺序存储、Page Cache和异步刷盘。 我们在写入commitlog的时候是顺序写入的这样比随机写入的性能就会提高很多 写入commitlog的时候并不是直接写入磁盘而是先写入操作系统的PageCache 最后由操作系统异步将缓存中的数据刷到磁盘 如何保证顺序 顺序由producer发送到broker的消息队列是满足FIFO的所以发送是顺序的单个queue里的消息是顺序的。多个Queue同时消费是无法绝对保证消息的有序性的。所以同一个topic同一个queue发消息的时候一个线程发送消息消费的时候一个线程去消费一个queue里的消息。RocketMQ给我们提供了MessageQueueSelector接口可以重写里面的接口实现自己的算法比如判断i%20那就发送消息到queue1否则发送到queue2。
http://www.zqtcl.cn/news/361867/

相关文章:

  • 唐山公司做网站查询建筑资质的网站
  • 邯郸的网站建设网站正能量入口
  • 网站导航栏最多可以做几个宝安网站设计排名
  • 自己怎样用手机建网站网件app
  • 周口网站开发西安市建设厅网站
  • 怎么授权小说做游戏网站论坛网站开发语言
  • 烟台商城网站建设怎么样引流顾客到店方法
  • 北京做网站公司的排名python基础教程pdf
  • 网站建设为什么学flash建设工程询价网站有哪些
  • 网站内容建设机制企业管理模式有哪些
  • 中山网站建设文化价格建网站域名注册
  • 手机电影网站怎么做大连最新发布
  • 珠三角网站建设网页制作专业知识
  • 罗湖微信网站制作深圳做网站哪个公司最好
  • ps如何做ppt模板下载网站网站模板分类
  • 网站建设在线网站服务器和直播服务器一样吗
  • iapp网站做软件教程朋友圈广告投放平台
  • 优门设 网站网站代理 正规备案
  • 衡水做wap网站上海做网站吧
  • seo推广思路seo线下培训班
  • 没有备案的网站怎么做淘宝客html5开发手机网站
  • 酒店旅游团购网站建设推广普通话实践总结
  • 基本的网站开发技术路线建设网站的好处有哪些
  • 网站排行怎么做wordpress all in one seo插件
  • 河北特定网站建设推荐wordpress添加vip用户组
  • 北京商城网站建设地址asp.net网站开发 pdf
  • 如何用网页制作网站龙岩门户网站
  • 中国建设银行官网站下载建设网站弹出后加载不进去
  • 广告网站制作多少钱建设工程合同甲方
  • 一号网站建设誉重网站建设