PerformanceMeter is a collection of callbacks that the implementation could know when a request is sent, arrives or is is processed.
As show above, T1-T5 identifies the following callbacks.
- T1: PerformanceMeter.requestStartAtClient (String, Execution, long)
- T2: PerformanceMeter.requestStartAtServer(String, Execution, long)
- T3: PerformanceMeter.requestCompleteAtServer(String, Execution, long)
- T4: PerformanceMeter.requestReceiveAtClient(String, Execution, long)
- T5: PerformanceMeter.requestCompleteAtClient(String, Execution, long)
- Server Execution Time: T3 - T2
- Client Execution Time: T5 - T4
- Network Latency Time: (T4 - T3) + (T2 - T1)
Notice that, when we make a connection to load a page for the first time, only Server Execution Time is available. T4 and T5 will be saved on the client side, and sent back along with the next request.
Once implemented, you could register it by specifying the following in WEB-INF/zk.xml (assume the class is called foo.MyMeter):
<zk> <listener> <listener-class>foo.MyMeter</listener-class> </listener> </zk>
Last Update : 2011/7/27
|Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.|