Apache Camel - 来自不同浏览器选项卡的具有相同参数的Jetty组件队列请求

时间:2013-10-15 14:00:41

标签: jetty apache-camel

camel-jetty 2.12.1

<c:route>
    <c:from uri="jetty:http://0.0.0.0:8055/ws/consulta" />
    <c:log message="${date:now:yyyy-MM-dd HH:mm:ss}" />
    <c:delay>
        <c:constant>10000</c:constant>
    </c:delay>
</c:route>

如果我在浏览器中打开两个标签并执行:

[tab1] http://localhost:8055/ws/consulta?param=param1
[tab2] http://localhost:8055/ws/consulta?param=param1

Camel 无法并行处理它们。


但如果我的标签有不同的参数:

[tab1] http://localhost:8055/ws/consulta?param=param1
[tab2] http://localhost:8055/ws/consulta?param=param2

Camel 能够同时处理它们。


如果我只打开一个标签并执行:

[tab1] http://localhost:8055/ws/consulta?param=param1
[tab1] http://localhost:8055/ws/consulta?param=param1

Camel 能够同时处理它们。


这是一个错误?

1 个答案:

答案 0 :(得分:0)

不,这不是一个错误。您的浏览器可能会阻止重复的“点击次数”。

如果你有两个终端并使用curl或一些命令行工具,那么它们会同时发送。

例如,我可以打开两个shell并输入

curl http://localhost:8055/ws/consulta?param=param1

请求进来(我花了2秒钟发送第二个)

2013-10-16 17:17:04,773 [tp2043068409-12] INFO  route1                         - 2013-10-16 17:17:04
2013-10-16 17:17:06,069 [tp2043068409-14] INFO  route1                         - 2013-10-16 17:17:06