java - Akka java 线程在多个 JVM 上阻塞

标签 java multithreading garbage-collection jvm akka

我有一个在 Linux RH 6.5 机器上运行的控制台应用程序。 尝试对该进程运行负载测试。 当在一台非常强大的机器上运行 1 个进程时,它工作正常并且 最小卡顿是从 GC 的角度来看的。 当尝试在该机器上运行 10 个实例时,大多数进程都会有很长的 GC 暂停。

是否需要进行可配置的更改才能运行负载测试或改进编码? 目前在 Akka 配置中的线程池上运行 5 个线程,机器有 20 个物理 CPU 和 128 GB 内存。

机器FS:http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=dd&subtype=ca&&htmlfid=897/ENUS112-144

最佳答案

如果 CPU 超额订阅,您需要限制 akka 使用的线程池和 GC 线程数。

如果您看到交换,那么您必须将每个 JVM 限制为可用内存的一部分,以便 GC 人体工学不会不必要地增加堆大小。

关于java - Akka java 线程在多个 JVM 上阻塞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39687308/

相关文章:

java - Netbeans:无断点开始调试

java - 多线程 TCP 服务器 : java.net.SocketException:套接字已关闭

c# - 局部范围的定时器的预期行为是什么?

java - OutOfMemoryError 和 GC 开销限制在 maven 但不是 eclipse

android - Android 上的 WeakReference 有什么问题吗?

java - 自定义 java BarChart 缩放问题

java - 如何使用 Intellij 配置和结构化子项目

java - 从 POJO 数据创建 HTML 页面

java - 如何从 CSV 中读取行以在多线程中使用

c# - 为什么等待异步这么慢?