Apache2 通过Apache服务器进行的Tomcat在连接过多后宕机

Apache2 通过Apache服务器进行的Tomcat在连接过多后宕机,apache2,tomcat7,ddos,ajp,Apache2,Tomcat7,Ddos,Ajp,我有一个Apache(2.4)服务器,它通过Tomcat7服务器上的AJP连接器提供内容 我的一个客户端在运行了太多到JSP-JSON-Api服务的并发连接之后,成功地杀死了tomcat实例。(Apache仍然可以工作,但tomcat失败了。重新启动tomcat会使它恢复正常)tomcat日志中没有错误 我想保护网站不至于像那样倒塌,但我不确定要更改哪些配置 我不想限制并发连接的数量,因为有合法的使用案例 我的Tomcat内存设置是: 初始内存池:1280MB 最大内存池:2560MB 我想这已

我有一个Apache(2.4)服务器,它通过Tomcat7服务器上的AJP连接器提供内容

我的一个客户端在运行了太多到JSP-JSON-Api服务的并发连接之后,成功地杀死了tomcat实例。(Apache仍然可以工作,但tomcat失败了。重新启动tomcat会使它恢复正常)tomcat日志中没有错误

我想保护网站不至于像那样倒塌,但我不确定要更改哪些配置

我不想限制并发连接的数量,因为有合法的使用案例

我的Tomcat内存设置是:
初始内存池:1280MB
最大内存池:2560MB
我想这已经足够了

值得一提的是,API服务依赖于多个可能很重的MySQL连接


任何建议都将不胜感激。

您为什么不慢慢地将最常用/重要的应用程序功能切换到
微服务
体系结构和
dockerize
您的tomcat服务器,以便能够管理应用程序的多个实例。这将有助于您的应用程序管理多个连接,而不会影响作业中服务器的总体性能。

如果您正在谈论扩展,则需要使用多个tomcat服务器进行横向扩展

如果你不能限制用户连接&仍然希望应用程序运行顺畅,那么你需要扩展。对微服务的体系结构更改是一种选择,但对于生产解决方案来说可能并不总是可行的

最好考虑运行多个共享负载的Tomcat。有多种方法可以做到这一点。有了您的技术堆栈,我觉得Apache2负载平衡器插件与Tomcat的结合将是最好的

祝你好运

现在,关于服务器容量、数据库连接容量等,您可能还需要考虑垂直扩展