我有一个雄猫服务器,可以处理一些其余的API请求。 此tomcat崩溃是由于某些输入中的一个特定的rest请求中的内存不足错误而导致的,导致大量堆大小的使用,从而使所有站点崩溃。
我想限制此剩余请求的内存使用量,我该怎么办? 我通常想保护tomcat免于因大内存使用而导致崩溃的请求。我该怎么做?也许以某种方式限制所有线程的最大堆大小?
答案 0 :(得分:0)
http://tomcat.apache.org/tomcat-6.0-doc/config/http.html
您可能正在寻找maxPostSize
OP澄清说是他的程序内存不足,而不是实际的帖子。
JVM的堆是共享的,每个线程没有堆,因此您所要求的是不可能的。您可以设置任意低的堆栈大小,并让JVM在达到某个调用深度时杀死线程,但这几乎可以确保解决问题,因为您不能保证将锁放回去进入有效状态。
我猜您的代码在内存中保存了大量数据。也许您可以问另一个问题,那么SO可以帮助您设计程序以便使用更少的内存吗?