JMS入门(三)点对点消息传送模型示例
来源:互联网 发布:java有多少个类 编辑:程序博客网 时间:2024/06/05 15:13
一、点对点模型
当你只需要将消息发送给唯一的一个消费者时,就应该使用点对点模型,并且这是个高可靠的模型。
我们用一个贷款示例来演示这种模型
QBorrower 类将贷款申请发送给 RequestQueue 队列,并且使用 ReplyQueue 队列从 QLender 类中接收结果
QLender 要根据 QBorrower 提供的工资和贷款额来确定是否给予贷款,若贷款额低于200000,则最多可贷款4倍于工资的金额,若贷款额大于200000,则最多可贷款10/3 倍工资的贷款额:
MapMessage msg = (MapMessage) message; double salary = msg.getDouble("Salary"); double loanAmt = msg.getDouble("LoanAmount"); // 决定是否接收或拒绝贷款申请 if (loanAmt < 200000) { accepted = (salary / loanAmt) > .25; } else { accepted = (salary / loanAmt) > .33; }
二、模型示例
我已经准备好了示例和编译、运行脚本,你只需要启动 ActiveMQ,然后依次运行 compile.bat,runQBorrower.bat 和 runQLender.bat 即可启动后结果如下:
下面我们在 QBorrower 中输入工资和贷款额:
看到 QLender 接受了第一次申请,拒绝了第二次申请
三、使用多个接收者实现负载均衡
即使有多个消费者在队列中侦听同一消息,也只有一个消费者线程会接收到消息,JMS提供者会使用负载均衡在消费者中均匀发布消息,再运行一次
runQLender.bat 来添加一个侦听者,可以看到 JMS提供者通过负载均衡来分发消息:
点对点模型示例
0 0
- JMS入门(三)点对点消息传送模型示例
- JMS消息服务器(二)——点对点消息传送模型
- JMS消息服务器(二)——点对点消息传送模型
- 点对点消息传送模型
- ActiveMQ 点对点消息传送模型
- jms activeMQ消息点对点通信入门实例
- JMS学习五(ActiveMQ消息传送模型)
- JMS订阅/发布消息传送模型
- JMS中点对点消息
- JMS 点对点消息
- JMS之点对点模型
- JMS消息传送机制
- JMS点对点(P2P)模式示例
- 消息队列入门(三)JMS标准及实现
- JMS消息传送机制ActiveMQ
- ActiveMQ入门:点对点模型
- ActiveMQ消息传送模型
- JMS(Java消息服务)简单示例
- java_Cookie_example(你上次访问的时间)
- Oracle segment_name为数字的怪象
- 1173字符逆序
- 第一篇:今天正式开始写博客~哇哈哈~~~
- 国内GIS网站
- JMS入门(三)点对点消息传送模型示例
- 1174C语言实验——打印菱形
- Java与编码问题一--ANSI、Unicode与UTF8
- Struts2之自定义类型转换器
- Debug总结
- 如何查看linux版本
- Java如何遍历Map的所有的元素
- 一个简单的CUDA程序
- Open gl 非矩阵和矩阵实现小动画