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

网站seo 文章转载 修改标题重庆seo技术博客

网站seo 文章转载 修改标题,重庆seo技术博客,网站开发公司怎么做账,招聘网站排行榜ActiveMQ介绍 一、JMS1.jms介绍2.jms消息传递模式3.JMS编码总体架构 二、消息中间件三、ActiveMQ介绍1.引入的原因1.1 原因1.2 遇到的问题1.3 解决思路 2.定义3.特点3.1 异步处理3.2 应用系统之间解耦3.3 实际-整体架构 4.作用 一、JMS 1.jms介绍 jms是java消息服务接口规范主要包含四大元素生产者、消费者、消息、消息服务。 生产者创建消息并把消息发动到消息服务消费者从消息服务接收消息消息服务即MQ消息服务broker而生产者与消费者相对其均为客服端消息整个消息服务的传输对象消息包含消息头、消息属性、消息体 常用消息头属性JMSDestination(消息目的地如果生产者指定了目的地在发送时会改为生产者绑定的目的地)、JMSDeliveryMode(是持久还是非持久)、JMSExpiration(过期时间默认永久)、JMSPriority(优先级0-9数值越大优先级越高默认为4)、JMSMessageId(唯一的消息ID) 消息属性可视为消息头属性的扩展通过setXxxProperty(k,v)设置 消息体封装消息的具体数据发送与接收的消息体类型必须一致消息体类型总共有5种TextMessage、Mapmessage、BytesMessage、StreamMessage、ObjectMessage 2.jms消息传递模式 jms消息传递模式有如下两种 点对点消息传递模式P2P消息发送到一个特殊队列(queue), 消费者从队列获取消息一条消息只能被只能被一个消费者消费发布/订阅消息传递模式(publish-subscribe)消息被发送到一个主题上(topic)所有订阅了该主题的消费者都能接收到消息。 3.JMS编码总体架构 JMS应用程序由如下基本模块组成 1.连接工厂对象创建消息客户端(生产者、消费者)与消息服务端的连接(connection)2.连接对象创建回话对象(session);3.会话对象创建生产者对象(producer)、消费者对象(consumer)以及消息对象(message)4.目的地(queue/topic)点对点模式下目的地是队列(queue)发布/订阅模式下目的地是主题(topic)生产者把消息发送到目的地消费者从目的地接收消息 Destination-目的地 总共有两大模式 队列Queue队列是一种一对一的消息传递模式。在队列中消息发送方生产者将消息发送到队列中然后消息接收方消费者从队列中接收并处理消息。每条消息只会被一个消费者接收和处理确保了消息的顺序性和唯一性。主题Topic主题是一种一对多的消息传递模式。在主题中消息发送方生产者将消息发送到主题中然后所有订阅该主题的消息接收方消费者都会收到该消息。每个消费者都可以独立地接收和处理消息消息的传递是广播式的可以实现发布-订阅模式。类似公众号N个人订阅就有N个人收到消息。 二、消息中间件 消息中间件是实现了jms规范的落地产品目前市场上主流的消息中间件有 ActiveMQ、Kafka、RocketMQ、RabbitMQ等。企业开发中使用消息中间件的主要目的是 解决耦合调用、抵御洪峰流量(削峰)等。 以下主要讲解ActiveMQ的使用。 三、ActiveMQ介绍 官网地址 1.引入的原因 1.1 原因 微服务架构后链式调用是我们在写程序时候的一般流程,为了完成一个整体功能会将其拆分成多个函数(或子模块)比如模块A调用模块B,模块B调用模块C,模块C调用模块D。但在大型分布式应用中系统间的RPC交互繁杂一个功能背后要调用上百个接口并非不可能从单机架构过渡到分布式微服务架构的通例 1.2 遇到的问题 系统之间接口耦合严重 举个例子如果系统A要发送数据给系统B和系统C发送给每个系统的数据可能有差异因此系统A对要发送给每个系统的数据进行了组装然后逐一发送当代码上线后又新增了一个需求把数据也发送给D新上了一个D系统也要接受A系统的数据此时就需要修改A系统让他感知到D系统的存在同时把数据处理好再给D。在这个过程你会看到每接入一个下游系统都要对系统A进行代码改造开发联调的效率很低。 面对大流量并发时容易被冲垮 每个接口模块的吞吐能力是有限的这个上限能力如果是堤坝当大流量洪水来临时容易被冲垮。举个例子秒杀业务上游系统发起下单购买操作我就是下单一个操作下游系统完成秒杀业务逻辑读取订单库存检查库存冻结余额检查余额冻结订单生产余额扣减库存减少生成流水余额解冻库存解冻 等待同步存在性能问题 RPC接口上基本都是同步调用整体的服务性能遵循“木桶理论”即整体系统的耗时取决于链路中最慢的那个接口。比如A调用B/C/D都是50ms但此时B又调用了B1花费2000ms那么直接就拖累了整个服务性能。 1.3 解决思路 解耦要做到系统解耦当新的模块接进来时可以做到代码改动最小削峰设置流量缓冲池可以让后端系统按照自身吞吐能力进行消费不被冲垮异步强弱依赖梳理能将非关键调用链路的操作异步化并提升整体系统的吞吐能力 2.定义 面向消息的中间件message-oriented middlewareMOM能够很好的解决以上问题是指利用高效可靠的消息传递机制与平台无关的数据交流并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型在分布式环境下提供应用解耦弹性伸缩冗余存储、流量削峰异步通信数据同步等功能。 发送者把消息发送给消息服务器消息服务器将消息存放在若干队列/主题topic中在合适的时候消息服务器回将消息转发给接受者。在这个过程中发送和接收是异步的也就是发送无需等待而且发送者和接受者的生命周期也没有必然的关系尤其在发布pub/订阅sub模式下也可以完成一对多的通信即让一个消息有多个接受者。 ActiveMQ 是 Apache 推出的一款 开源免费的完全支持 JMS1.1 和 J2EE 1.4 规范的 JMS Provider 实现的消息中间件Message Oriented Middleware,MOM 3.特点 3.1 异步处理 消息发送者可以发送一个消息而无须等待响应。消息发送者将消息发送到一条虚拟的通道主题或者队列上消息接收者则订阅或者监听该爱通道。一条消息可能最终转发给一个或者多个消息接收者这些消息接收者都无需对消息发送者做出同步回应。整个过程都是异步的。 这样的一种通信方式就是所谓的“异步”通信方式对于系统A来说只需要把消息发送给MQ然后系统B就会异步的去进行处理了系统A不需要“同步”的等待系统B处理完成。 这样的好处是 解耦 3.2 应用系统之间解耦 发送者和接收者不必了解对方只需要确认消息发送者和接收者不必同时在线 3.3 实际-整体架构 4.作用 解耦削峰异步
http://www.dnsts.com.cn/news/11591.html

相关文章:

  • 营销型网站建设tfx88活码二维码生成器
  • 企业培训网站建设云南省建设测量员注册网站
  • 揭阳网站如何制作做网站用jsp还是j2ee
  • 松江网站建设博客上海互联网公司有哪些
  • 成都科技网站建设费用网站计算机培训机构哪个最好
  • 网站建设与设计ppt模板wordpress qq微信登陆地址修改密码
  • 昆明市建设厅网站自己做网站需要什么条件
  • 公司做网站 需要准备什么门户网站建设工作制度建立情况
  • 温州行业网站建设广州市网站建设公司
  • 上海网站制作公司哪家网易暴雪最新消息
  • 广州黄埔网站制作万网企业网站建设
  • 自己做的网站为什么不显示图片营销创意网站
  • 国内自适应网站案例青岛网站制作公司网络
  • 网站建优化珠宝出售网站模板
  • 关于网站建设的合同协议德清网站制作
  • 网站登录密码忘记wordpress页面显示标签代码
  • 做网站引流东莞常平房价
  • 网站建设以后就业方向做网站平面一套多少钱
  • 沈阳市建设局网站怎么改变wordpress最大上传文件
  • 西安北郊做网站的公司站长统计ios
  • 购物网站开发的背景介绍制作二维码生成器
  • 云网站开发wordpress增加访问速度
  • 阿里云主机怎么做两个网站吗郑州市网络设计
  • 广州越秀网站制作门户网站
  • 江苏免费关键词排名外包郑州网络seo公司
  • asp.net mvc 5网站开发之美重庆网站建设最大
  • 引用网站的内容如何做注释会员卡系统
  • 正版win10做win7系统下载网站discuz论坛系统
  • 网站后台发邮件网站后台管理产品排序
  • 郑州招聘网站推广wordpress改变主题颜色