Java 负载下嵌入式码头超时

Java 负载下嵌入式码头超时,java,jetty,akka,akka-camel,Java,Jetty,Akka,Akka Camel,我有一个带有camel jetty consumer的akka(Java)应用程序。在一些最小负载(大约10 TPS)下,我们的客户机开始看到HTTP 503错误。我试图在实验室重现这个问题,但jetty似乎无法处理重叠的HTTP请求。以下是apache bench(ab)的输出: ab使用一个线程发送10个请求(即一次一个请求) ab使用两个线程发送10个请求(最多同时发送2个请求): 我不相信jetty这么糟糕。希望这只是一个配置问题。这是我的骆驼消费者URI的设置: "jetty:http

我有一个带有camel jetty consumer的akka(Java)应用程序。在一些最小负载(大约10 TPS)下,我们的客户机开始看到HTTP 503错误。我试图在实验室重现这个问题,但jetty似乎无法处理重叠的HTTP请求。以下是apache bench(ab)的输出:

ab使用一个线程发送10个请求(即一次一个请求)

ab使用两个线程发送10个请求(最多同时发送2个请求):

我不相信jetty这么糟糕。希望这只是一个配置问题。这是我的骆驼消费者URI的设置:

"jetty:http://0.0.0.0:8899/pim?replyTimeout=70000&autoAck=false"

我使用的是akka 2.3.12和camel jetty 2.15.2

jetty肯定没有那么糟糕,应该能够用数千个测试程序集处理10秒的数千个连接

从您所说的很难诊断,除了Jetty在装载时不发送503以外。。。。除非部署了拒绝服务保护筛选器?(ab看起来像是DOS攻击……它基本上是,而且不是一个很好的基准测试负载生成器)


因此,您需要追踪发送503的人/事以及原因。

Jetty肯定没有那么糟糕,应该能够通过数千个TPS处理成千上万个10秒的连接

从您所说的很难诊断,除了Jetty在装载时不发送503以外。。。。除非部署了拒绝服务保护筛选器?(ab看起来像是DOS攻击……它基本上是,而且不是一个很好的基准测试负载生成器)


因此,您需要追踪发送503的人/事以及原因。

这是我的错误代码:发送者(客户端)信息被重叠请求覆盖。由于Jetty延续超时,发送了503错误消息。

这是我的错误代码:发送方(客户端)信息被重叠请求覆盖。由于Jetty继续超时,发送了503错误消息

ab -n 10 -c 2 -p bad.txt http://192.168.20.103:8899/pim


Benchmarking 192.168.20.103 (be patient).....done


Server Software:        Jetty(8.1.16.v20140903)
Server Hostname:        192.168.20.103
Server Port:            8899

Document Path:          /pim
Document Length:        33 bytes

Concurrency Level:      2
Time taken for tests:   30.24549 seconds
Complete requests:      10
Failed requests:        1
   (Connect: 0, Length: 1, Exceptions: 0)

// obmited for clarity


Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.9      1       2
Processing:     3 3005 9492.9      4   30023
Waiting:        2 3005 9492.7      3   30022
Total:          3 3006 9493.0      5   30024


Percentage of the requests served within a certain time (ms)
  50%      5
  66%      5
  75%      7
  80%      7
  90%  30024
  95%  30024
  98%  30024
  99%  30024
  100%  30024 (longest request)
"jetty:http://0.0.0.0:8899/pim?replyTimeout=70000&autoAck=false"