Java *版本本身在我们的 iseries 环境中非常慢

问题描述 投票:0回答:1

我们有两个系列环境。在一种环境中,Java 程序的运行速度比在另一种环境中慢(十到 15 倍)。

我们尝试对环境进行所有调整。但后来我们意识到存在一些根本性的问题。

仅“Java 版本”在较慢的环境中持续需要 20 到 30 秒。而在较快的环境下它会在 2 秒内响应。

知道什么可能导致这样的问题吗?

java performance ibm-midrange
1个回答
0
投票

遇到这个确切的问题后,这是我的调查/修复:

我的具体问题来自 QShell。在终端中使用命令

strqsh
时,任何命令(如
ls
)都需要 20-30 秒才能开始执行。

经过调查,我发现了以下 IBM 文章,其中指出任何 QShell 实例都会在实际运行命令之前发送

system.domain
的 DNS 请求。

https://www.ibm.com/support/pages/qshell-session-takes-long-prompt-or-time-start-and-run-commands

我的具体情况是 AS400 DNS 配置已过时,因为主要和辅助 DNS 服务器不存在。因此,主机表上任何失败的 DNS 请求都会超时。

为了解决此问题,我使用

cfgtcp
选项 12 进入主机表以查找当前使用的域名,并通过
cfgtcp
选项 10 添加 2 个条目: w.x.y.z -> 系统和 w.x.y.z -> system.domain

我想指向一个正常运行的 DNS 服务器也可以解决这个问题。

添加这些条目后,修复了 QShell“滞后”、

RUNJVA
命令和通过 ssh 的
java YourProgram
。我想运行 Java 也会在底层使用 QShell 实例。

© www.soinside.com 2019 - 2024. All rights reserved.