gpt4 book ai didi

Java - 为什么响应时间会随着时间的推移而增加?

转载 作者:行者123 更新时间:2023-12-02 00:31:08 27 4
gpt4 key购买 nike

我正在 Eclipse indigo 中执行 Java 程序 10,000 次。所有执行的操作都在内存中;无磁盘 IO 或网络 IO。我注意到,在一段时间内,对于相同的输入,响应时间从 2 毫秒增加到 25 毫秒。绘制响应时间后,该图看起来呈线性。第一个想法是我没有调整垃圾收集器。我已将垃圾收集器设置为最大吞吐量和更少的垃圾收集暂停时间。还是没有区别。

有关响应时间和 Java VM GC 的屏幕截图,please click the link

我在 Macbook Pro 2011 上运行 Oracle Java。

java version "1.6.0_29"Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-11M3527)Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode)

以下是我的虚拟机设置

-server -XX:+UseParallelGC -XX:+UseParallelOldGC -Xms48m -Xmx64m -XX:NewSize=32m -XX:MaxNewSize=32m -Xss2048k -XX:SurvivorRatio=16 -XX:MaxGCPauseMillis=15 -verbose:gc -Xloggc:gclog.txt -XX:+PrintGCDetails

如果有人能阐明这一点,请不胜感激。

最佳答案

根据您告诉我们的内容,很难说出问题是什么。

  • 这可能是您的应用程序本身的问题。

  • 这可能是您启动应用程序的方式出现问题。

  • 这可能是您测量“响应时间”的方式存在问题。

<小时/>

如果您想要更好的答案,您需要解释如何您“在 Eclipse indigo 中执行 Java 程序 10,000 次”。

  • 如何/在哪里测量响应时间?通过 eclipse ?通过别的什么?
  • 这真的意味着您运行 Eclipse 启动器 10,000 次吗?
  • 或者您是否正在运行一些正在启动应用程序的基准测试框架类?
  • 或者只是调用应用程序的 main 10,000 次?
  • Eclipse 是在单独的 JVM 还是在 Eclipse JVM 中运行测试?

另外:

  • 当你说没有网络 I/O 时,是否包括 127.0.0.x 和本地 IPC?
  • 应用程序实际上在做什么?它是否以某种形状或形式与其他事物交谈?

关于Java - 为什么响应时间会随着时间的推移而增加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9050622/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com