`
nfxu
  • 浏览: 4250 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

java message service中消息consumer的部署方式

阅读更多
这几天下载了apache的activeMQ, 做了下试验:

1 ActiveMQ是独立用server方式运行的,也就是执行解压缩后bin目录下的activemq.bat。
2 试验代码用的消息生产者和消费者是在命令行中用不同线程完成生产和消费的动作的,尤其是,消费者是用异步的方式。

生产者和消费者作为独立进程(线程)通过标准的互联网协议(tcp://localhost:61616)同server(activeMQ)通信,所以,生产者和消费者是可以部署到任意机器上的。

现在考虑一下消费者的部署。之所以采用JMS的异步模式,就是为了在系统资源紧张的时候,把原本同步完成的耗时工作通过JMS在资源不紧张的时候异步完成。所以,最好是,当服务器得到一个消息,检测一下当前资源状态,如果很忙,就等待。如果不忙,就唤醒消费者完成消费的动作。消费者最好能部署到activeMQ中,由它来调度,这是最好的一种方式,比单独部署消费者为一个定时启动的进程要好的多。

但是我在activeMQ的文档中没有找到相关的信息。大家有什么看法?

补:

1 刚才想了想,其实把消费者部署到activeMQ中恐怕不是一种好的做法。为什么呢,我想起来有人说过,activeMQ实际上是一种负载均衡,load balancing,把逻辑计算部分和balancer放在一起显然不好。但是,对于我的例子,我还是希望放在一起,因为我可以省掉调度消费者的麻烦(例如,用cron去设定何时启动消费者进程等等)。总之,我想找标准的,被支持的方法。

2 我的生产者在tomcat中,不用JEE,所以不能将消费者用message driven Bean的方式部署在JEE容器里。
分享到:
评论
1 楼 nfxu 2009-02-04  
就没有人能谈点儿什么么?

相关推荐

    java_ee_api_中英文对照版.zip(免费下载)

    4. **Java Message Service (JMS)**:JMS提供了一种标准的消息传递模型,允许分布式系统之间异步通信。生产者发送消息到队列或主题,消费者从这些队列或主题接收消息。JMS API包含Producer、Consumer、Queue和Topic...

    轻量级java消息中间件源码.zip

    Java消息服务(Java Message Service,简称JMS)是Java平台上的一个API,用于在分布式环境中交换消息。它定义了生产、存储、消费消息的接口和协议,使得不同的消息系统之间能够互操作。JMS包含两种类型的消息模型:...

    J2EE中的JMS 消息服务

    Java Message Service(JMS)是Java平台上的一个标准接口,用于在分布式环境中提供异步的消息传递服务。它允许应用程序创建、发送、接收和读取消息,使得应用程序可以解耦,提高系统的可扩展性和可靠性。在J2EE...

    企业消息总线(ESB)源代码

    ActiveMQ 支持JMS(Java Message Service)规范,并提供了多种语言的API,包括Java、C++、Python等,使得非Java平台的应用也可以方便地使用。 在提供的源代码中,"企业消息总线(ESB).sln"可能是一个Visual Studio...

    Java-25-通用设计-分布式事务-消息队列.rar

    分布式事务和消息队列在Java开发中是两个非常重要的概念,尤其在构建大规模、高并发、高可用的系统时更是不可或缺。本资料包"Java-25-通用设计-分布式事务-消息队列.rar"主要涵盖了这两个主题,下面将详细阐述它们的...

    ActiveMQ基础知识

    * JMS(Java Message Service):是指Java消息服务,提供了统一的消息传递机制。 * JMS Provider:是指提供JMS服务的消息中间件,例如ActiveMQ。 * JMS Client:是指使用JMS服务的应用程序。 1.3 JMS 编程模型 JMS...

    Spring和ActiveMQ的整合实例源码

    1. **JMS(Java Message Service)**:JMS是一个标准,定义了API,使得应用程序可以创建、发送、接收和读取消息。它为不同应用提供了一种可靠的消息传递机制,无论这些应用是否在同一时间运行。 2. **Spring JMS...

    Java后台开发ActiveMQ使用手册.pdf

    ActiveMQ是遵循JMS(Java Message Service)规范的消息服务提供者,提供了企业级的消息通信能力。它不仅可以与Java应用程序协同工作,还支持其他多种编程语言。ActiveMQ的消息传递机制以其高可靠性、灵活性和扩展性...

    jms simple code

    **JMS(Java Message Service)** 是Java平台中用于创建、发送、接收和读取消息的标准API。它提供了一种可靠且异步的方式来传递消息,是企业级应用间通信的重要工具。在Java环境中,JMS允许应用程序通过消息中间件...

    activemqactivemq

    Apache ActiveMQ是业界广泛使用的开源消息中间件,它遵循Java Message Service (JMS) 规范,提供高效、可靠的异步消息传递服务。在“activemqactivemq”这个主题下,我们主要关注如何使用ActiveMQ进行消息的接收和...

    ActiveMQ 消息队列

    ActiveMQ遵循Java Message Service (JMS) 1.1 和 Java 2 Platform, Enterprise Edition (J2EE) 1.4 规范,为开发者提供了高效稳定的消息传输服务。 #### 二、ActiveMQ的核心特点 1. **多语言和跨平台支持**:除了...

    jms.rar_jms

    Java消息服务(Java Message Service,简称JMS)是Java平台中用于企业级应用间异步通信的一种标准API。它允许应用程序创建、发送、接收和读取消息,为分布式环境中不同组件之间的解耦提供了强大支持。在给定的"jms....

    flex用到JMS代码下载

    JMS,全称Java Message Service,是Java平台中用于消息传递的一个应用程序接口(API),它为应用程序提供了一个标准的方式来创建、发送、接收和读取消息。 在“flex用到JMS代码下载”这个主题中,我们讨论的是如何...

    Weblogic提供JMS服务Demo

    Weblogic服务器是一款由Oracle公司开发的企业级应用服务器,它提供了丰富的功能和服务,其中包括Java消息服务(JMS,Java Message Service)。JMS是一种标准接口,允许应用程序创建、发送、接收和读取消息。在这个...

    国产化中间件产品对接,jms的接口参考

    标题中的“国产化中间件产品对接,jms的接口参考”指的是在信息技术领域,特别是中国国内,使用本土化的中间件产品进行系统间的通信,而这里的通信机制是基于Java消息服务(Java Message Service,简称JMS)。...

    JMS.rar_J2EE JMS_jms

    Java消息服务(Java Message Service,简称JMS)是Java平台上的一个标准API,它为分布式环境中的应用程序提供了创建、发送、接收和阅读消息的统一接口。JMS在J2EE(Java 2 Platform, Enterprise Edition)框架中扮演...

    Spring+ActiveMQ实现,基于Maven

    在与ActiveMQ集成时,Spring框架的`spring-jms`模块提供了对JMS(Java Message Service)的抽象,使得我们可以方便地管理和使用消息队列。 **ActiveMQ** ActiveMQ是Apache软件基金会的一个开源项目,它是JMS的实现...

    J2EE5/WS/JMS规范中文文档

    而JMS(Java Message Service)是Java平台上的一个标准,它定义了消息中间件如何在分布式环境中交换信息。 **J2EE5中的主要改进和特性** 1. **Annotations(注解)**: J2EE5引入了注解,允许开发者在代码中直接指定...

    message-service

    这里提到的"message-service"很可能是一个基于Java开发的消息服务系统,用于处理和传递各种业务消息。 在Java中,实现信息服务有多种框架和技术,例如Apache ActiveMQ、RabbitMQ、Kafka以及Spring Cloud Stream等。...

    ActiveMQDemo实战.pdf

    在ActiveMQ中,生产者和消费者都是通过JMS API(Java Message Service Application Programming Interface)来与消息代理进行交互的。 生产者核心代码逻辑部分,主要介绍了如何使用JMS API来构建消息生产者,并通过...

Global site tag (gtag.js) - Google Analytics