我有一个应用程序,我已经重新考虑了因此我相信它现在更快了。人们不可能感觉到差异,但理论上,应用程序应该运行得更快。通常我不在乎,但由于这是我的硕士学位项目的一部分,我想支持我的说法,即重新分解不仅会带来改进的设计和“更高的质量”,而且还会提高性能应用程序(一个小玩具 - 火车组模拟)。
我今天玩了最新的VisualVM东西大约四个小时,但我无法从中得到任何帮助。没有(或者我没有找到)一种方法来简单地比较从两个版本(重构前和重构后)获取的分析结果。
从更快的应用程序版本中简单地告诉慢一点是什么是最简单,最直接的方法。两者的差异必然会对绩效产生影响。谢谢。
答案 0 :(得分:5)
我建议创建一些模拟应用程序实际使用情况的自动化测试。创建足够的测试以获得合适的基准。
在各种负载下运行应用程序的两个版本的测试套件。
这应该会给你一个非常真实的世界时间表现。在较低级别执行此操作可能无法为您提供准确的事实。
答案 1 :(得分:1)
我认为你可以找到一种衡量差异的好方法,你可以说这是由于重构,如果你没有其他事情,但我会为此烦恼,因为那不是真的理解为什么它更快。
Here's an example of really aggressive performance tuning.
令我信服的是,是否可以证明
特定的代码行或一小组行直接负责整个挂钟时间的近似分数F%,
从某种意义上来说,这条线路并不是必需的,因为可以找到一种方法来减少使用它,或者根本不使用它,
这一变化导致整个挂钟时间减少约F%。