- 1、本文档共88页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
chapter_MessageDrivenBean.ppt
声明 本课件仅用于北京航空航天大学计算机学院的教学; 本课件修改采用了一些网络资源(论文、研究报告、技术报告等),在采用的时候并没有准确标注引用信息。 第4章 Message-Driven Bean 北航计算机学院 linxl@ 2006年 2 月 1 日 内容列表 4.1 Message 4.2 MOM 4.3 JMS 4.4 MDB 4.5 小结 4.1 Messaging Messaging Messaging is a method of communication between software components or applications Messaging enables distributed communication that is loosely coupled Message Collection of data sent from one application to another A message is a string of data or a null string sent or received by a task Disadvantages of RPC RPC方法忽略了: 延迟(网络、应用程序) 部分失败和并发 … RPC让通信更容易,但代价是: 请求/响应通信 针对每一个请求,我们期望一个响应,阻塞调用者线程直到接收到响应(或者响应超时) 代理和Stub强绑定 强绑定和类型一致使得编程容易,但强绑定和类型一致使得变化非常困 RPC暴露行为 Disadvantages of CORBA All CORBA messages are synchronous Over-reliance on inheritance: inflexible implementation Use of a IDL (Interface Definition Language) adds complexity Disadvantages of RMI Synchronous communication: Calling process blocks until there is a response Tightly coupled: Client must find recipients, and know method arguments No persistence A lot of connections can be difficult to scale 解决方案 系统间通过管道通信 管道有逻辑地址 发送应用程序将消息放到管道中,然后处理其它工作 (“fire-and-forget”) 管道将消息排队直到被接收应用程序使用(FIFO) 消息传递系统举例 文件传输 消息: 文件 目的地: 文件系统目录 运行环境: 操作系统的文件系统 数据库 消息: 数据集 目的地: 数据库表 运行环境: 数据库 JMS / MSMQ 消息: byte, text, object, stream … 目的地: 队列(point -to-point), 主题(publish-subscribe) 运行环境: MOM环境支持 SOAP 消息消息: SOAP XML format 目的地: (取决于传送方式) 运行环境:... 为什么要使用消息传递 (1) 灵活性 (2) 可缩放性 (3) 高负载的平缓释放 (4) 集成性 (1) 灵活性 更多的数据流选择 Fire-and-forget, multicast, disconnected, load forget, balancing, flow control, priority routing 等. 多粒度的处理逻辑多粒度的处理逻辑 Routing Slip Content-Based Router 更容易维护和变化更容易维护和变化 消息格式的变化不需要重新编译不相关的客户端 消息流的传递不需要修改中间结点 避免并发死锁 (和RPC响应阻塞相比) (2) 可缩放性 竞争消费– 多个处理端可以读取同一队列 发送端不需要进行任何改变 粗粒度消息可以使处理端成为“无状态” (3) 高负载的平缓释放 队列中存储的消息将会等待被处理 消息处理端或消费者会经可能快的取走消息 如果处理端阶段无法继续: 我们可以增加更多的处理端 或者等待峰值负载被释放 (4) 集成性 消息传递不需要一致的类型系统 消息就是类型 消息传递可以连接多个系统 (.NET,J2EE,etc.) XML消息非常适合此类场景 其它数据表现形式也可用 (CSV, 文本) 消息传递的灵活性使得集成更容易 消息传递面临的挑战 使用队列来通信,而不是对象 双向通信需要至少2个队列:一个用于请求消息,
您可能关注的文档
- B第周练习.doc
- B遗传物质的结构和性质徐晋麟分子生物学.ppt
- B微孔化合物的合成化学.ppt
- B驾照理论试题.doc
- CAD技术应用__.ppt
- CDMAX在煤矿安全监察信息网络中的应用.doc
- CFBC锅炉安全经济运行中三大顽症的治理.ppt
- ch-方差分析.ppt
- chapterConductionI.ppt
- chapterMCS单片机的硬件结构及工作原理.ppt
- 人教版六年级上册数学期末测试卷附参考答案【培优】.docx
- 人教版六年级上册数学期末测试卷附参考答案【培优a卷】.docx
- 人教版五年级上册数学期末考试试卷(中心小学).docx
- 人教版六年级上册数学期末测试卷【真题汇编】.docx
- 人教版六年级上册数学期末测试卷及完整答案(易错题).docx
- 人教版五年级上册数学期末考试试卷附参考答案【模拟题】.docx
- 人教版六年级上册数学期末测试卷及参考答案【夺分金卷】.docx
- 人教版六年级上册数学期末测试卷附参考答案【典型题】.docx
- 人教版六年级上册数学期末测试卷含答案【综合题】.docx
- 人教版六年级上册数学期末测试卷附参考答案【名师推荐】.docx
文档评论(0)