Apache速度限制最佳实践

我有以下业务场景:

  1. Apache HTTP服务器通过ajp负载平衡客户端请求到应用程序服务器
  2. 所有的资源密集型工作都是在每个请求的应用服务器上完成的
  3. 请求是基于应用程序用户的,但是没有简单的方法来限制用户。
  4. 大多数用户将来自一个单一的IP,有几个可能来自几个ips。 因此,为了这个问题的意图,我假设每个用户将来自一个IP。
  5. 目标是防止任何单个用户用请求淹没服务器。

我目前使用iptables限速来限制每个ip的最大并发连接数。

有更好的方法吗?

也许你最好的机会会像http://bloke.org/apache/limit-apache-requests-per-ip-address-with-mod_limitipconn/

另外,既然你正在使用ajp,我会假设你是前端的tomcat。 另一种技术,我的帮助是使用asynchronousServlet – https://plumbr.eu/blog/how-to-use-asynchronous-servlets-to-improve-performance