2017-04-11 49 views
0

我对应用程序的响应时间有一些抱怨,所以我正在寻找我可以加速的地方。使用一个分析阶段监听器和一些分析包装器,我期望找到一些需要缓存的东西。但是,似乎并非如此。一个典型的例子来看看起来是这样的:做一些性能调优,不知道如何找到在哪里花费时间

Controller>afterRestoreView completed in 0:00.000.044769 
PhaseProfiler>LIFECYCLE>RESTORE_VIEW completed in 0:00.017.090231 
PhaseProfiler>LIFECYCLE>APPLY_REQUEST_VALUES completed in 0:00.012.076884 
PhaseProfiler>LIFECYCLE>PROCESS_VALIDATIONS completed in 0:00.003.804324 
PhaseProfiler>LIFECYCLE>UPDATE_MODEL_VALUES completed in 0:00.002.898762 
PhaseProfiler>LIFECYCLE>INVOKE_APPLICATION completed in 0:00.000.113143 
Controller>beforeRenderResponse completed in 0:00.000.012222 
Controller>afterRenderResponse completed in 0:00.000.003143 
Counted resolves: 4975 
Top ten most expensive resolves: 
Total took a total of 0:00.020.281386s 
flashScope took a total of 0:00.006.770973s 
caseBean took a total of 0:00.004.517358s 
caseFilter took a total of 0:00.003.038453s 
row took a total of 0:00.001.741708s 
session took a total of 0:00.001.026528s 
compositeData took a total of 0:00.000.983215s 
uiService took a total of 0:00.000.641919s 
requestScope took a total of 0:00.000.391530s 
options took a total of 0:00.000.176558s 
PhaseProfiler>LIFECYCLE>RENDER_RESPONSE completed in 0:02.900.494895 
PhaseProfiler>LIFECYCLE completed in 0:02.936.944360 

所以东西的renderResponse正在约2.9秒,但它不是我的事件处理程序,这是不是我的变量绑定。使用System.nanoTime并不是完全的性能,但与System.currentTimeMillis相比似乎增加了约一秒或更少的时间,所以我仍然缺少相当多的时间。我只能占不到21ms。

是否有更深的挖掘技术?

回答

3

使用此项目:https://www.openntf.org/main.nsf/project.xsp?r=project/XPages%20Toolbox

虽然我没能做出R9代理工作,它的CPU分析器做一个完美的工作。它可以查明特定SSJS,Java方法或Notes API调用的瓶颈。强烈推荐。

+0

我仍然在8.5.3上,所以没有R9是一个功能,而不是一个bug:D。 –

+2

XPages Toolbox应该可以在8.5.2+上运行。关键要素是将数据库放在正确的位置(根目录),jar文件指向的位置是在需要进入Domino程序文件夹的文本配置文件中定义的,该位置指向notes.ini。还需要对java安全策略进行更改(这可能仅用于更改日志记录级别)。因此,不推荐用于生产服务器。 –