我有一个进行大量后台计算的网络应用程序。当我在 tomcat8 中部署应用程序时,我可以看到 Java 进程使用了我可用的 12 个内核中的 800%。
当我从命令行在 jetty-runner 中运行相同的应用程序时,java 进程只占用一个 CPU (100%)。
在我看来,我根本不明白 tomcat 和 jetty-runner 如何实际运行我的 webapp?我对整个 JVM-Thing 还很陌生 :-)
有没有办法告诉 jetty-runner 使用多个 CPU,就像 tomcat8 那样,或者我在这里完全跟踪?
谢谢!
最佳答案
你有 12 个内核?
然后使用 Jetty 9.4.2.v20170220,因为它已针对 8 核以上的系统进行了增强,并一直测试到 48 核(到目前为止)。
另外,不要使用 jetty-runner,因为它适用于极其简单/天真的 webapp 部署场景。
正如所描述的,您的需求已经远远超出了 jetty 跑者的角色。
考虑使用 jetty-distribution,因为这将允许您进一步调整线程池、选择器、接受器等的配置。
关于tomcat - Jetty-Runner 只使用一个 CPU?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42573760/