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

南通企业网站seo宁海企业网站建设

南通企业网站seo,宁海企业网站建设,iis 发布网站内部服务器错误,福建城市建设厅网站TOC 目录 MQ的实现方法 RabbitMq中的相关概念 消息队列系统模块划分 总体划分 服务端模块 数据管理模块 虚拟机数据管理模块 交换机路由模块 消费者管理模块 信道#xff08;通信#xff09;管理模块 连接管理模块 服务端BrokerServer模块 客户端模块 消费者管…TOC 目录 MQ的实现方法 RabbitMq中的相关概念 消息队列系统模块划分 总体划分 服务端模块 数据管理模块 虚拟机数据管理模块 交换机路由模块 消费者管理模块 信道通信管理模块 连接管理模块 服务端BrokerServer模块 客户端模块 消费者管理模块 信道管理客户端 连接管理模块 基于以上的三个模块封装实现订阅客户端 / 发布客户端 消息队列中间件是在分布式系统中重要的组件主要解决应用耦合异步消息流量削峰等等问题。实现高性能高可用可伸缩和最终一致性架构是大型分布式系统不可缺少的中间件。目前常用的消息队列是RabbitMq, KafKa,ZeroMq,MetaMq等。 我们是仿照RabbitMq实现简易的消息队列就得先了解RabbitMqRabbitMq是一种开源消息中间件使用Erlang语言进行开发实现了高级消息队列协议AMQP MQ的实现方法 MQ的实现方法有两种AMQP和JMS AMQP代表高级消息队列协议是一个开放的应用层协议标准用于设计面向消息的中间件。所以我们使用protobuf制作消息。        JMS即Java消息服务JavaMessage Service应用程序接口是一个Java平台中关于面向消息中间件的API JMS是JavaEE规范中的一种类比JDBC很多消息中间件都实现了JMS规范例如ActiveMQ。RabbitMQ 官方没有提供JMS的实现包但是开源社区有 RabbitMq中的相关概念 Broker接收和分发消息的应用RabbitMQ Server就是Message Broker        Virtual host 出于多租户和安全因素设计的把AMQP的基本组件划分到一个虚拟的分组中类似网络中的namespace 概念。当多个不同的用户使用同一个RabbitMQ Server提供服务的时可以划分成多个vhost每个用户在自己的vhost创建exchange/queue等        Connectionpublisher/consumer和broker之间的TCP连接Channel如果每一次访问RabbitMQ都建立一次Connection在消息量大的时候建立TCP Connection的开销将是巨大的效率也较低Channel 是在connection 内部建立的逻辑连接如果应用程序支持多线程通常每个thread创建单独的channel 进行通信AMQP method 包含了channel id 帮助客户端和 message broker识别channel, 所以channel 之间是完全隔离的Channel 作为轻量级的Connection 极大减少了操作系统建立Tcp Connection 的开销        Exchangemessage 到达broker 的第一站 根据分发规则匹配查询表中的rounting_key分发消息到queue中去常见的类型是direct(直接匹配), topic主题匹配, fanout广播匹配        Queue消息最终被送到这里等待consumer取走Bindingexchange 和 queue 之间的虚拟连接bingding 中可以包含routing key.        Binding信息被保存到exchange中的查询表中用于message 的分发依据 接下来说一下我们仿RabbitMq需要实现的东西 消息队列系统模块划分 总体划分 服务端发布客户端订阅客户端 服务端模块 数据管理模块 交换机数据管理模块队列数据管理模块绑定数据管理模块消息数据管理模块 以上模块分别实现数据的管理以及持久化存储 虚拟机数据管理模块 虚拟机其实就是交换机队列绑定消息的整体逻辑单元因此虚拟的数据管理其实就是将以上四个模块的合并管理 交换机路由模块 消息的发布将一条新消息发布到交换机上由交换机决定放入哪些队列而决定交给哪个队列其中交换机类型起了很大作用直接交换广播交换主题交换直接交换和广播交换的思想较为简单而主题交换设计到了一个规则匹配的流程而交换路由就是专门做匹配过程的 消费者管理模块 消费者指的是订阅了一个队列消息的客户端一旦这个队列有了消息就会推送给这个客户端在核心API中有个订阅消息的服务---这里的订阅不是订阅某条消息而是订阅某个队列的消息当前主要实现消息推送功能因此一旦有了消息就要能找到消费者相关的信息消费者对应的信道 信道通信管理模块 一个连接可能会对应有多个通信通道一旦某个客户端要关闭通信关闭的不是连接而是自己对应的通信通道关闭信道我们就需要将客户端的订阅给取消 连接管理模块 就是一个网络通信对应的连接因为当一个连接要关闭的时候就应该把连接关联的通道全部关闭因此也有数据至少要管理关联的信道 服务端BrokerServer模块 这个模块是将以上所有模块的整合整合成为一个服务端 客户端模块 消费者管理模块 一个订阅客户端当订阅一个队列消息的时候其就相当于创建了一个消费者 信道管理客户端 客户端的信道和服务端的信道是一一对应的服务端信道提供的服务客户端都有 相当于服务端向客户端提供服务客户端为用户提供服务 连接管理模块 对于用户来说所有的服务都是通过信道完成的信道在用户的角度就是一个通信通道而不是连接 因此所有的请求就是通过信道来完成的 连接的管理就包含了客户端资源的整合 基于以上的三个模块封装实现订阅客户端 / 发布客户端 订阅客户端订阅一个队列的消息收到推送过来的消息进行处理 发布客户端向一个交换机发布消息。
http://www.dnsts.com.cn/news/228877.html

相关文章:

  • 网站内容描述网站制作开发策划
  • 购物网站策划书四川省采购一体化平台
  • 做童车外贸上哪个网站中国寰球工程公司
  • 温州做网站哪里好网址升级中
  • 做百度百科的网站做网站的广告
  • 东莞凤岗网站建设怎样进入公众号
  • 网站导航菜单设计产品如何做网络推广
  • 彩票网站开发是否合法足球门户网站建设
  • 案例应聘网络营销做网站推广iis 网站没有上传权限
  • 网站建设及目标做中英文网站公司
  • 新密做网站推广企业所得税计算公式2022
  • 怎么做公司网站竞价网站开发前台实训
  • 甘肃建设厅网站美观网站建设价格
  • 企业网站托管外包平台厦门seo排名外包
  • 2002年做网站多少钱什么是网页和网站
  • 邢台高端网站建设多用户商城系统哪家好些
  • 资料网站怎么做的砚山县住房和城乡建设局网站
  • 网站优化可以自己做么购物网站的建设的好处
  • 婚庆网站建设必要性做网站网站代理违法吗
  • 如何在局域网内做网站老李网站建设
  • 网站建设优化服务流程什么类型的网站
  • 谷歌网站质量指南杭州滨江网站开发
  • 贵港市城乡住房建设厅网站怎样是做网站
  • 政务内网网站群建设方案php毕业设计代做网站
  • 网站尾部设计安装wordpress 建立数据库连接时出错
  • 江苏做网站红酒购物网站源码
  • 【网站建设西安网页制作模板
  • 企业管理咨询服务合同范本石家庄seo网站优化电话
  • 绑米wordpressseo建网站
  • 新乡网络网站建设代人做网站