MQ学习笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MQ学习笔记

基础概念 企业级消息传递 可以异步收发消息 存储转发 收发双方不必须同时都处于活动的状态 MOM(消息中间件) 优势:松耦合,可扩展性 JMS(JSR914,JMS1.1) 接口规范API 实现有不同的提供商 消息服务器/消息代理broker 类似邮政服务 而非应用间直接通信 receive()同步接收(客户端主动去接收) / listener异步接收 JMS两种域(模式): PTP 点到点 通过Queue队列实现 一个消息只能被消费一次(如果同一个队列有多个消费者,那么只有一个消息只会发给一个消费者,轮询方式) Pub/Sub 发布/订阅 通过Topic主题实现 一个消息可被多个订阅者消费(一个主题的所有订阅者都会收到) **Durable Subscription vs. Non-Durable Subscription (Durability只有Pub/Sub域才有) 当订阅者断开连接(非活动)时,JMS Provider会为其保留它所订阅的消息,在它重新连接后便可接收;Non-Durable的订阅则无法接收到断开连接时发布到主题上的消息 区别Persistence(消息投递模式,与Durability是完全不同的概念) 发布/订阅 异步收发 不需要互相知道是什么系统和在什么位置以及对方会如何处理消息 收发分离 不互相依赖 解耦合 同一个消息可以被分发给多个接收方 消息选择 订阅者过滤消息两种方式: 基于主题 基于内容:通过消息属性的值来过滤 ActiveMQ优点 JMS兼容 多种连接选择:HTTP/S, JGroups, JXTA, multicast, SSL, TCP, UDP, XMPP等 可插拔的持久化和安全性 Java容器集成 非Java的API 代理集群 等等 速度快(often 10x faster than JBossMQ) JMS对象 JMS客户端、非JMS客户端、JMS生产者、JMS消费者、JMS消息、JMS域、受管理对象(连接工厂、目的地) JMS消息解剖 头部为客户端和提供商提供元数据;属性是可选的;负载可以是文本、二进制数据等,有不同的消息类型(Message-TextMessage, MapMessaage, BytesMessage, StreamMessage, ObjectMessage);头部和属性可被用来过滤消息(JMS选择器selector语法…) 消息投递模式 需要持久化:投递一次且仅一次 无需持久化:最多投递一次 可靠性机制 基本可靠性机制 签收(Acknowledgement) 在带事务的Session中,签收自动发生在事务提交时。如果事务回滚,所有已经接收的消息将会被再次传送。在不带事务的Session中,一条消息何时和如何被签收取决于Session 的设置。 传送模式(Delivery Mode) 设置消息优先级 允许消息过期 使用临时目标(TemporaryQueue, TemporaryTopic) 临时目标持续到创建它的connection关闭,只有创建者才可从中接收消息。 高级可靠性机制 持久订阅 使用本地事务 ActiveMQ应用 conf/activemq.xml 连接 客户端-代理:transportConnectors/ tcp(mfu), multicast, ssl, stomp, xmpp, nio, udp, ssl, http/https, vm NIO (jsr51, javase1.4):有大量的客户端需要连接到代理;网络流量很重 SSL:broker.ks, broker.ts VM:vm内部通信,无须通过网络。应用内嵌broker。极大提高了性能。 代理-代理:networkConnectors/ network of brokers, 集群…集群拓扑,forwarding bridge / duplex connector 静态:static, failover 动态:multicast, discovery, peer, fanout multicast: uri=”multicast://default/”, default组 peer:用于创建vm网络。组名。发往组中一个的消息同组的其它都可得。 fanout(扇出):用于客户端同时连接到多个代理并且复制操作,它可以使用static或multicast。默认地,至少连接2个代理,只适用于topic。注意,只用于生产,而不用于消费。 持久化 恢复 内存,文件,关系数据库 可插拔 PTP:FIFO Topic: only one copy of message broker persistent=”true” AMQ Message Store 基于文件的,最快的 KahaDB M

文档评论(0)

xjj2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档