Java 带Camel的消息侦听器
我试图通过阅读一些书籍(Camel in Action)和一些教程来理解Camel是如何工作的,但有一些东西我实际上并不理解。基本上,每当用户单击网页进行特定操作时,我必须处理从web应用程序发送到兔子队列的一些消息 我将创建一个Maven项目,并定义一个配置路由来处理这个过程。我的怀疑与该过程的执行有关。如果我理解的很好,当我使用Java 带Camel的消息侦听器,java,spring,apache-camel,enterprise-integration,Java,Spring,Apache Camel,Enterprise Integration,我试图通过阅读一些书籍(Camel in Action)和一些教程来理解Camel是如何工作的,但有一些东西我实际上并不理解。基本上,每当用户单击网页进行特定操作时,我必须处理从web应用程序发送到兔子队列的一些消息 我将创建一个Maven项目,并定义一个配置路由来处理这个过程。我的怀疑与该过程的执行有关。如果我理解的很好,当我使用 maven camel:run 它创建CamelContext的实例并处理队列。但不清楚进程是否会保持活动状态,等待队列中的新消息。我是否必须创建一些主动检查队列
maven camel:run
它创建CamelContext的实例并处理队列。但不清楚进程是否会保持活动状态,等待队列中的新消息。我是否必须创建一些主动检查队列上新消息的东西,比如侦听器或守护进程,或者可以使用Spring配置它
谢谢你的时间Andrea如果您的应用程序定义了一个路由,那么它将在您的队列上创建一个侦听器,该侦听器将一直处于活动状态,直到您终止
maven come:run
进程
有关使用maven camel插件的更多信息,请参见此页面:如果您的应用程序定义了路由,那么它将在您的队列上创建一个侦听器,该侦听器将一直处于活动状态,直到您终止
maven come:run
进程
有关使用maven camel插件的更多信息,请参见此页面:只要上下文已启动并正在运行,并且您已将队列定义为路由的入口点,它就应该继续侦听消息并进行处理。比如:
<camel:camelContext xmlns="http://camel.apache.org/schema/spring" id="echoContext">
<route id="echoJmsConsumeRoute">
<from uri="activemq:queue:xxx.xxx.xxx.xxx.testqueue"/>
<to uri="log:echo?level=DEBUG"/>
</route>
</camel:camelContext>
当然,如果您终止maven进程,JVM将终止。只要上下文已启动并正在运行,并且您已将队列定义为路由的入口点,它就应该继续侦听消息并进行处理。比如:
<camel:camelContext xmlns="http://camel.apache.org/schema/spring" id="echoContext">
<route id="echoJmsConsumeRoute">
<from uri="activemq:queue:xxx.xxx.xxx.xxx.testqueue"/>
<to uri="log:echo?level=DEBUG"/>
</route>
</camel:camelContext>
当然,如果杀死maven进程,JVM将终止