Red Hat Training

A Red Hat training course is available for Red Hat Fuse

276.3. BlockingQueue 実装の選択

Camel 2.12 から利用可能

デフォルトでは、SEDA コンポーネントは常に LinkedBlockingQueue を意図していますが、異なる実装を使用することもできますが、独自の BlockingQueue 実装を参照できます。この場合、size オプションは使用されません。

<bean id="arrayQueue" class="java.util.ArrayBlockingQueue">
  <constructor-arg index="0" value="10" ><!-- size -->
  <constructor-arg index="1" value="true" ><!-- fairness -->
</bean>

<!-- ... and later -->
<from>seda:array?queue=#arrayQueue</from>

または、BlockingQueueFactory 実装を参照する場合、3 つの実装は LinkedBlockingQueueFactory、ArrayBlockingQueueFactory、および PriorityBlockingQueueFactory が提供されます。

<bean id="priorityQueueFactory" class="org.apache.camel.component.seda.PriorityBlockingQueueFactory">
  <property name="comparator">
    <bean class="org.apache.camel.demo.MyExchangeComparator" />
  </property>
</bean>

<!-- ... and later -->
<from>seda:priority?queueFactory=#priorityQueueFactory&size=100</from>