Tomcat的连接数和jvm参数要根据机器的硬件指标以及要部署的应用的的情况调整的, 不存在一种普世的方式。 针对一般的应用可按照一楼给出的配置, 如果对性能要求很高的应用, 需要通过分析测试来调整对应的参数,以让机器能达到高利用率。
给一个参考
假如机器是2核的,4GB内存的,gc可以这样配置比较均衡。要求jdk7以上
-server
-Xms2048m
-Xmx2048m
-XX:MetaspaceSize=256m
-XX:MaxMetaspaceSize=256m
-Xmn1024m
-XX:+UseConcMarkSweepGC
-XX:+UseCMSCompactAtFullCollection
-XX:CMSMaxAbortablePrecleanTime=5000
-XX:+CMSClassUnloadingEnabled
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=80
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/home/admin/java/java.hprof
-Xloggc:/home/admin/java/gc.log
-XX:+PrintGCDetails
-XX:+PrintGCDateStamps
-XX:MaxDirectMemorySize=512m
-XX:SurvivorRatio=10
-XX:+ExplicitGCInvokesConcurrent
-XX:ParallelGCThreads=2
2、tomcat的线程数,一般来说,这种配置下,200个线程足够了。太多了,线程切换是瓶颈。另外要权衡你的接口一次请求中耗时是多少,等等。。。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。