Configuration 我需要多少Apache Camel队列?

Configuration 我需要多少Apache Camel队列?,configuration,apache-camel,Configuration,Apache Camel,我有一个有15个服务的系统。我不熟悉骆驼和JMS远程处理。对于15个服务,我认为每个服务应该有一个传入队列 但是,队列似乎只能绑定到一个接口: org.apache.camel.example.server.Treble implements two interfaces org.apache.camel.example.server.Multiplier and org.apache.camel.example.server.Divider. I bind the two inter

我有一个有15个服务的系统。我不熟悉骆驼和JMS远程处理。对于15个服务,我认为每个服务应该有一个传入队列

但是,队列似乎只能绑定到一个接口:

org.apache.camel.example.server.Treble implements two interfaces     
org.apache.camel.example.server.Multiplier and org.apache.camel.example.server.Divider. I bind the two interfaces to the same JMS queue: jms:queue:numbers

<bean id="multiplier" class="org.apache.camel.spring.remoting.CamelServiceExporter">
          <property name="uri" value="jms:queue:numbers" />
          <property name="service">
                 <bean class="org.apache.camel.example.server.Treble" />
          </property>
          <property name="serviceInterface"  value="org.apache.camel.example.server.Multiplier" />
   </bean>
<bean id="divider" class="org.apache.camel.spring.remoting.CamelServiceExporter">
          <property name="uri" value="jms:queue:numbers" />
          <property name="service">
                 <bean class="org.apache.camel.example.server.Treble" />
          </property>
          <property name="serviceInterface" value="org.apache.camel.example.server.Divider" />
   </bean>
org.apache.camel.example.server.Treble实现两个接口
org.apache.camel.example.server.Multiplier和org.apache.camel.example.server.Divider。我将这两个接口绑定到同一个JMS队列:JMS:queue:numbers
我发现只有第一个绑定(org.apache.camel.example.server.Multiplier)可以工作。在客户端,我得到了org.apache.camel.example.server.Divider的代理并调用divide()。消息可以到达服务器端。但是当Camel试图处理消息时,Camel只缓存绑定到jms:queue:numbers的第一个接口的代理。因此,它无法处理消息并引发异常


那么,这是否意味着如果我想将jms远程处理与camel结合使用,我需要一个2队列(in/Out)/类?这很贵吗?

如果您需要所有服务使用相同的传入端点,请使用路由器

如果您需要所有服务使用相同的传入端点,请使用路由器

谢谢您的评论,但我的服务不会有相同的数据输入。他们都有不同的数据输入。谢谢你的评论,但是我的服务不会有相同的数据输入。它们都有不同的数据输入。