如果您正在合用 JVM 中运行 Java™ 应用程序,那么可以移动这些应用程序以在 JVM 服务器中运行。 由于 JVM 服务器可以处理同一个 JVM 中 Java 应用程序的多个请求,因此可以减少运行相同工作负载所需的 JVM 数目。
开始之前
确保应用程序是线程安全的,并且打包为一个或多个 OSGi 捆绑软件。 必须将 OSGi 束部署到 CICS ® 束中的 zFS ,并指定正确的目标 JVMSERVER 资源。
Java 开发者可以使用 CICS Explorer® 随附的 CICS SDK for Java 来使用 OSGi 重新打包 Java 应用程序。 有关如何迁移使用第三方 JAR 的应用程序的更多信息,请参阅 升级 Java 环境。
关于此任务
您可以使用现有 JVM 服务器,也可以为应用程序创建 JVM 服务器。 请勿将应用程序移动到线程限制和使用率已经很高的 JVM 服务器,因为您可能会在 JVM 服务器中引入锁定争用。
过程
- 创建或更新 JVM 服务器:
- 如果您决定创建 JVM 服务器,请参阅 配置 Liberty JVM 服务器。 合用 JVM 的 JVM 概要文件中的许多设置不适用于 JVM 服务器。 可能要从合用 JVM 概要文件复制到 DFHOSGI 概要文件的唯一选项是 LIBPATH_SUFFIX 选项。
- 如果使用现有 JVM 服务器,那么可能必须增加 JVMSERVER 资源上的 THREADLIMIT 属性以处理其他应用程序或更新 JVM 服务器概要文件中的选项。 如果更改 JVM 概要文件,请重新启动 JVM 服务器以获取更改。
- 创建指向 zFS中已部署的捆绑软件的 BUNDLE 资源。
安装 BUNDLE 资源时, CICS 会将 OSGi 束装入到 JVM 服务器中的 OSGi 框架中。 OSGi 框架解析 OSGi 捆绑软件并注册 OSGi 服务。
使用 CICS Explorer 来检查是否已启用 BUNDLE 资源。 您还可以使用 OSGi 捆绑软件和 OSGi 服务视图来检查 OSGi 捆绑软件和服务的状态。
- 更新应用程序的 PROGRAM 资源:
- 确保 EXECKEY 属性设置为 CICS。
所有 JVM 服务器工作都在 CICS 密钥中运行。
- 除去 JVM 概要文件名称并输入 JVMSERVER 资源的名称。
- 确保 JVMCLASS 属性与 Java 应用程序的 OSGi 服务相匹配。
- 重新安装应用程序的 PROGRAM 资源。
PROGRAM 资源使用 OSGi 服务使 OSGi 束可供 JVM 服务器外部的其他 CICS 应用程序使用。
结果
调用 Java 应用程序时,它将在 JVM 服务器中运行。
下一步操作
您可以使用 CICS Explorer 中的 JVM 服务器视图和 CICS 统计信息来监视 JVM 服务器。 如果性能不理想,请调整线程限制。