this is my vps package每月14.99英镑,所以不要贵。
Thay将numproc限制在96,当我注册时,他们并没有明显表示这是一个限制,但我认为这不是我的错。
我正在运行Tomcat,如果我用完了numproc,那么Java将崩溃,容器需要手动重启。
所以我在server.xml中添加了以下内容以限制线程数。实验使我将数字20作为稳定的最大值。
<Connector port="80" protocol="HTTP/1.1"
maxThreads="20"
connectionTimeout="20000"
redirectPort="8443" />
我认为使用maxThreads =“20”会阻止超过20个servlet请求同时运行,如果不是这样,请纠正我。
我认为numproc所有线程的最大数量?如果是这样,那么我有时会运行近76个其他线程,看起来很多但是有Java,Tomcat,Hibernate,Ehcash,FTP,SSH,MYSQL和2个JavaMelody实例
无论如何我的问题是。
设置maxThreads =“20”是保持numproc失效的最佳方法,或者有更好的方法。最后是我的vps不公平,限制为96?
顺便说一下,我距离达到任何其他系统限制还有很长的路要走。
答案 0 :(得分:0)
最后我的vps是不公平的,限制为96?
绝对不是。每月14.99英镑的英镑,你不能指望大量的处理器资源。此外,20个同步的servlet请求相当多......
......当我报名时,他们并没有明显表示这是一个限制......
是的。它被称为“精美印刷品”。但如果你没有阅读合同中的“细则”那么你就不能抱怨了。
(我无法确定您使用的套餐/服务,但网站上记录了numprocs
限制;例如http://help.1and1.co.uk/servers-c40665/virtual-server-c63188/virtuozzo-power-panel-c63246/extended-resources-of-a-1and1-virtual-server-a686172.html)
看,如果你不能忍受这个:
你可以尝试抱怨或恳求你的是一个特例,但我怀疑它会取得什么成就。你 应该读过那个精美的印刷品。
设置maxThreads =“20”是保持numproc失效的最佳方法。
仅解决servlet请求线程池的大小。 MySQL工作线程怎么样? MySQL连接的数量?您的FTP服务同时请求的数量?你需要2个JavaMelody实例吗?等等。
您可以做的一件事是采用Java线程转储来查看JVM中存在的其他线程。也许你没有考虑过的东西正在吞噬你的numprocs配给。