Java—为什么响应时间会随着时间的推移而增加?
我在EclipseIndigo中执行了10000次Java程序。执行的所有操作都在内存中;没有磁盘IO或网络IO。我注意到,在一段时间内,对于相同的输入,响应时间从2毫秒增加到25毫秒。绘制响应时间后,图形看起来是线性的。第一个想法是我没有调整垃圾收集器。我已经为最大吞吐量和更少的gc暂停时间设置了垃圾收集器。还是没有区别 有关响应时间和Java VM GC的屏幕截图 我正在MacBookPro 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) java版本“1.6.0_29” Java(TM)SE运行时环境(构建1.6.0_29-b11-402-11M3527) Java HotSpot(TM)64位服务器虚拟机(构建20.4-b02-402,混合模式) 以下是我的虚拟机设置 -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 -服务器-XX:+UseParallelGC-XX:+UseParallelOldGC-Xms48m-Xmx64m-XX:NewSize=32m-XX:MaxNewSize=32m-Xss2048k-XX:SurviorRatio=16-XX:MaxGCPausEmilis=15-verbose:gc-Xloggc:gclog.txt-XX:+PrintGCDetails 如果有人能说明这一点,我将不胜感激。你可以说明这一点。。。通过简单地分析您的应用程序:Java—为什么响应时间会随着时间的推移而增加?,java,performance,optimization,garbage-collection,jvm,Java,Performance,Optimization,Garbage Collection,Jvm,我在EclipseIndigo中执行了10000次Java程序。执行的所有操作都在内存中;没有磁盘IO或网络IO。我注意到,在一段时间内,对于相同的输入,响应时间从2毫秒增加到25毫秒。绘制响应时间后,图形看起来是线性的。第一个想法是我没有调整垃圾收集器。我已经为最大吞吐量和更少的gc暂停时间设置了垃圾收集器。还是没有区别 有关响应时间和Java VM GC的屏幕截图 我正在MacBookPro 2011上运行Oracle Java java version "1.6.0_29" Java(TM
请告诉我们您的发现:)根据您告诉我们的情况,很难说问题出在哪里
- 这可能是应用程序本身的问题
- 您启动应用程序的方式可能会出现问题
- 这可能是您测量“响应时间”的方式中的一个问题
如果您想要一个更好的答案,您需要解释如何“在EclipseIndigo中执行Java程序10000次”
- 如何/在何处测量响应时间?日食?还有别的原因吗
- 这真的意味着您要运行Eclipse启动器10000次吗李>
- 或者您正在运行某个启动应用程序的基准测试框架类
- 或者只是调用应用程序的
10000次main
- Eclipse是在单独的JVM中运行测试,还是在Eclipse JVM中运行测试
- 当您说没有网络I/O时,是否包括127.0.0.x和本地IPC
- 应用程序实际上在做什么?它是在以某种形式或形式与其他事物交谈吗
- 这可能是应用程序本身的问题
- 您启动应用程序的方式可能会出现问题
- 这可能是您测量“响应时间”的方式中的一个问题
如果您想要一个更好的答案,您需要解释如何“在EclipseIndigo中执行Java程序10000次”
- 如何/在何处测量响应时间?日食?还有别的原因吗
- 这真的意味着您要运行Eclipse启动器10000次吗李>
- 或者您正在运行某个启动应用程序的基准测试框架类
- 或者只是调用应用程序的
10000次main
- Eclipse是在单独的JVM中运行测试,还是在Eclipse JVM中运行测试
- 当您说没有网络I/O时,是否包括127.0.0.x和本地IPC
- 应用程序实际上在做什么?它是在以某种形式或形式与其他事物交谈吗