3

有没有办法配置 Tomcat 在特定阈值后拒绝请求?例如,在 506 请求开始拒绝之后。
有这样的选择还是我应该为此编写代码?

4

1 回答 1

4

Tomcat 的连接器可以配置为仅同时服务一定数量的请求——这被配置为in的maxConnections属性。(您也可以配置,但这实际上是操作系统在达到该堆积后维护的连接队列)。这限制了所有 URL上与 Tomcat 的同时连接——也就是说,它只是受到限制的总连接数。<Connector>server.xmlacceptCountmaxConnections

如果您想限制同时连接到特定 URL(或特定 URL 集)的数量,您可能必须编写自己的代码。我听说Spring Security有很多像这样的 QOS(服务质量)功能,您无需编写自己的代码就可以使用它们。

否则,您将被迫编写自己的代码——可能Filter只是跟踪有多少请求正在进行中,然后在达到某个限制后拒绝那些进来的请求。当心跨线程使用的计数器的同步问题。

于 2012-07-31T15:09:07.397 回答