java tomcat jms_java – 使用ActiveMQ和Spring的JMS Standalone使用者
从历史上看,我已经将我的JMS使用者应用程序部署为在Tomcat(Windows框)下部署的Spring webapps.然后,这些消费者将在同一个Tomcat实例下与我的其他Web应用程序一起运行.然而,随着我使用的消费者数量的增长,我意识到这将成为一种维护噩梦.
我的解决方案是将这些webapps转换为部署为jar的“main method”独立应用程序.实际上,我能够成功地将它们打包在一起,以尝试尽可能多地重用资源(DAO,依赖项等).
这是我的主要方法:
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
try {
FooListener fooListener = (FooListener) context.getBean("fooListener");
fooListener.start();
} catch (Exception e) {
logger.error(e.getMessage(),e);
}
try {
BarListener barListener = (BarListener) context.getBean("barListener");
barListener.start();
} catch (Exception e) {
logger.error(e.getMessage(),e);
}
}
我的问题:
>我是否需要在主方法应用程序中执行任何特殊操作来关闭我的JMS连接,或者在应用程序终止时它们会关闭吗?
>有没有人有任何个人偏好或其他关于是使用tomcat部署jms消费者还是作为独立应用程序?
编辑:
更多信息:FooListener和BarListener扩展了以下抽象类.它们从applicationContext.xml文件中的相应bean继承它们的值,并且它们都覆盖onMessage()方法以异步使用消息.
public abstract class TextMessageListener implements MessageListener {
protected ConnectionFactory connectionFactory;
protected String queueName;
protected String selectors;
public void start() throws JMSException {
Connection connection = connectionFactory.createConnection();
Session session = connection.createSession(false,Session.CLIENT_ACKNOWLEDGE);
MessageConsumer consumer = session.createConsumer(session.createQueue(queueName),selectors);
consumer.setMessageListener(this);
connection.start();
}
public abstract void onMessage(Message message);
}
java tomcat jms_java – 使用ActiveMQ和Spring的JMS Standalone使用者相关推荐
- java spring省略jsp,Java +Tomcat + SpringMVC实现页面访问示例解析
window7下Java环境安装记录: 一.安装Tomcat 1.下载tomcat 7.0,解压,无需安装,放置到目录:D:\apache-tomcat-7.0.90. 2.配置系统环境变量,CATA ...
- ActiveMQ整合spring
主要讲解点: 使用ActiveMQ完成发短信功能(重点) 2.Kindeditor上传图片及图片管理器功能的实现(对应后台代码是重点, Kindeditor参照demo会用就行) 宣传活动的保存功能( ...
- ActiveMQ与spring整合
2019独角兽企业重金招聘Python工程师标准>>> 1 生产者 第一步:引用相关的jar包. <dependency> <groupId>org.spri ...
- 面向Java程序员的20大Spring REST面试问题答案
大家好,过去两周来,我一直在与Spring教程共享一些REST,今天,我将向申请Web开发人员角色的Java开发人员共享一些常见的Spring和REST面试问题. 由于Spring Framework ...
- 使用ActiveMQ支持Spring Integration路由
正如我在上 一篇 文章中所讨论的那样 ,Spring Integration(SI) 是在Spring Framework之上构建的路由框架 ,它使您可以使用经过验证的企业集成模式来通过消息传递解决系 ...
- Spring整合JMS——基于ActiveMQ实现(一)
Spring整合JMS--基于ActiveMQ实现(一) 1.1 JMS简介 JMS的全称是Java Message Service,即Java消息服务.它主要用于在生产者和消费者之间进行消息 ...
- 启动activemq_「Java」 - SpringBoot amp; ActiveMQ
一.消息队列 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合.异步消息.流量削锋等问题,实现高性能.高可用.可伸缩和最终一致性架构,是大型分布式系统不可缺少的中间件. 目前在生产环境中使用较 ...
- activeMQ,spring的jmstemplate简单例子
1.使用的是maven的结构,导入activeMQ的包 [html] view plain copy <dependency> <groupId>org.apache.acti ...
- activemq后台管理 看topic消息_「Java」 - SpringBoot amp; ActiveMQ
一.消息队列 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合.异步消息.流量削锋等问题,实现高性能.高可用.可伸缩和最终一致性架构,是大型分布式系统不可缺少的中间件. 目前在生产环境中使用较 ...
最新文章
- 青少年编程竞赛交流群第050次活动录播
- 20162329 2017-2018-2《程序设计与数据结构》课程总结
- Xamarin XAML语言教程基本页面ContentPage占用面积内容页面的派生关系与属性
- 卷积神经网络中的各种池化操作
- 前端差异化项目合并打包
- 2021-11-15UA OPTI512R 傅立叶光学导论20 夫琅禾费衍射
- ITK:在图像中查找连接的组件
- 代码统计工具有哪几种_跟我学“Linux”小程序Web版开发(四):引入统计及Crash收集...
- 牛津大学最新调研:AI面临基准危机,NLP集中“攻关”推理测试
- Zibll子比主题版本V5.6-免授权版
- 数据太大?你该了解Hadoop分布式文件系统
- python课堂整理1
- u盘恢复软件?windows小工具不要错过!
- linux 临时文件 锁,Linux上开启强制性记录锁
- opencv 稀疏光流 稠密光流
- DA LAO:SpringBoot讲述 快速构建微服务体系。
- 理想服务员,重新上岗,你需要服务不?
- 【Windows】Windows装机软件
- 【esp32学习之路6——flash加密】
- Vcenter Server 7 分配许可证
热门文章
- Caffe编写Python layer
- 【javascipt】Generator函数(生成器)
- C 语言实例 - 删除字符串中的特殊字符
- oracle 表查询(二)
- ul 中的li取值问题
- SAP B1 9.1 跟踪某个查询的执行
- ASP.NET中Request.InputStream使用
- 如何解决“呈现控件时出错”的问题(转)
- 导航栏透明度渐变; 下拉头视图拉伸效果;勾号动画; 一段文字中点击部分可响应不同事件...
- 关于Unity中的transform组件(二)