JVM 服务器可用于运行 Java™ 应用程序的线程数有限。 CICS® 区域对线程数也有限制,因为每个线程都使用 T8 TCB。 您可以使用 CICS 统计信息来调整线程限制,以平衡区域中 JVM 服务器的数量与每个 JVM 服务器中运行的应用程序的性能。
关于此任务
每个 JVM 服务器最多可以有 256 个线程来运行 Java 应用程序。 在 CICS 区域中,最多可以有 2000 个线程。 如果有许多 JVM 服务器在 CICS 区域中运行 (例如,超过 7 个) ,那么不能为每个 JVM 服务器设置最大值。 您可以调整每个 JVM 服务器的线程限制,以根据 Java 应用程序的性能来平衡 CICS 区域中的 JVM 服务器数。
线程限制是在 JVMSERVER 资源上设置的,因此请设置初始值,并在测试 Java 工作负载时使用 CICS 统计信息来调整线程数。
过程
- 启用 JVMSERVER 资源并运行 Java 应用程序工作负载。
- 使用相应的统计时间间隔收集 JVMSERVER 资源统计信息。
您可以使用 CICS Explorer®中的 视图,也可以使用 DFH0STAT 统计程序。
- 检查任务等待线程的次数和时间。
JVMSERVER 线程限制等待
和
JVMSERVER 线程限制等待时间
字段包含此信息。
- 如果这些字段中的值很高,并且由于 JVMTHRD 等待而暂挂了许多任务,那么 JVM 服务器没有足够的可用线程。 增加线程数会增加处理器使用率,因此请检查是否有足够的 MVS™ 资源可用。
- 如果这些字段中的值较小,并且任务的峰值数量低于可用的最大线程数,那么可以通过减少线程限制来释放其他 JVM 服务器的线程。
- 要检查 MVS 资源的可用性,请使用分派器 TCB 池和 TCB 方式统计信息来评估 CICS 区域中的 T8 TCB 使用情况。
JVM 服务器中的每个线程都使用 T8 TCB ,并且在区域中限制为 2000。 T8 虽然所有 TCB 都位于 THRD TCB 池中,但无法在 JVM 服务器之间共享 TCB。 如果等待 TCB 数和处理器使用率较低,那么表明有足够的 MVS 资源可用。
- 要调整可在 JVM 服务器中运行的线程数,请更改 JVMSERVER 资源上的 THREADLIMIT 值。
- 再次运行 Java 应用程序工作负载,并使用统计信息来检查等待任务数是否已减少。
下一步操作
要调整 JVM 服务器的性能,请参阅 提高 JVM 服务器性能。