我们在iseries机器上调用Java程序,对程序的第一次调用很慢。以下呼叫很快,但如果我们等待一段时间,则呼叫再次变慢。
如何保持JVM正常运行,还是有其他方法可以解决这个问题?
由于
答案 0 :(得分:2)
最新的JVM(IBM Technology for Java)是最快的。典型的问题是,如果JVM自己的jar缓存在内存中,那么加载速度非常快 - 如果没有,则需要根据需要从磁盘加载,这非常慢。 (在Windows下实际上有一个加速过程。)
您可以考虑使用一个小脚本,每隔X秒读取JVM的所有jar文件,或实现“通过数据队列与守护程序JVM进行通信”,这是传统的方法。
答案 1 :(得分:2)
您可能需要考虑让您的Java应用程序成为一直运行的服务器...您的本机应用程序可以发送&使用tcp或数据队列接收对服务器的请求。
这样一来,服务器的启动成本是一次性的,没有一个用户永远不会受到影响。
答案 2 :(得分:0)
为运行JVM的子系统分配更多内存。
不要调用静态方法,因为根据定义,静态类不必保留在内存中。
用* this调用方法。
祝你好运