Ниже приведены мои 3 маршрута в моем базовом классе маршрутов groovy, развернутом в качестве базовой структуры.
from("jms:queue:EndPoint1?concurrentConsumers=100")
.routePolicyRef("myPolicy")
.transacted()
.log("Recieved From Endpoint1")
/*.to("log:Recieved From Endpoint1?groupSize=100")*/
.to("CommonEndpoint");
from("jms:queue:EndPoint2?concurrentConsumers=50")
.rootPolicyRef("myPolicy")
/*.to("log:Recieved From Endpoint2?groupSize=100")*/
.log("Recieved From Endpoint2")
.to("CommonEndpoint");
from("CommonEndpoint")
.delay(50)
/*.to("log:Delayed?groupSize=100")*/
.log("Delayed");
Ниже мой маршрут таймера, созданный в комплекте, который относится к базовой структуре.
from("timer://Timer1?fixedRate=true&period=60000")
.to("jms:queue:EndPoint1");
а также
from("timer://Timer2?fixedRate=true&period=60000")
.to("jms:queue:EndPoint2");
который непрерывно отправляет сообщение таймера в Endpoint1 и Enpoint2, которые оба отправляют сообщение в общую конечную точку. Моя ThrottlingInflightRoutePolicy определена, как показано ниже.
<bean id="myPolicy" class="org.apache.camel.impl.ThrottlingInflightRoutePolicy">
<property name="scope" value="Context"/>
<property name="maxInflightExchanges" value="20"/>
<property name="resumePercentOfMax" value="10"/>
<property name="loggingLevel" value="WARN"/>
</bean>
При проверке журнала я могу просто увидеть трассировку журнала таймера. Я не понимаю, как регулировать запросы при проверке журнала. здесь есть что-то, чего мне не хватает?? Что нужно сделать в моем коде, чтобы проверить дросселирование....?