在确定了批处理业务的SQLNet Message from client表示网络传输和client处理之后,我们来看交互式应用的情况。交互式情况的问题在于并非像批处理一样持续运行,总是纳入运行时间,而是中间存在着大量的空闲时间,包括实际的空闲时间(没有做任何业务)和由于技能的不同导致的key time和think time的不同。
作为交互式应用,我们也需要平均数的统计来完成客户端计数,幸运的是客户端处理一般不会存在并发的情况(C/S)应用,一般来说客户端的程序处理时间是一致的,主要区别在于空闲时间的不同。基本而言,我们可以通过v$event_histogram来衡量客户端运行。
比如以下快照运行:
select * from (select e2.event,e2.wait_time_milli,e2.wait_count-e1.wait_count wait_count from mc$event_histogram e1,mc$event_histogram e2 where e2.id=1 and e1.id=0 and e2.event#=e1.event# and e2.wait_time_milli=e1.wait_time_milli)
where wait_count >0 and event ='SQL*Net message from client' order by wait_time_milli;
运行结果:
EVENT WAIT_TIME_MILLI WAIT_COUNT
1 SQL*Net message from client 1 6247
2 SQL*Net message from client 2 24
3 SQL*Net message from client 4 11
4 SQL*Net message from client 8 4
5 SQL*Net message from client 16 3
6 SQL*Net message from client 32 1
7 SQL*Net message from client 128 2879
8 SQL*Net message from client 256 8
9 SQL*Net message from client 512 1
10 SQL*Net message from client 2048 2
11 SQL*Net message from client 16384 31
12 SQL*Net message from client 32768 2
13 SQL*Net message from client 65536 17
14 SQL*Net message from client 131072 3
基本而言,我们可以把64~128ms作为客户端处理时间。
作为交互式应用,我们也需要平均数的统计来完成客户端计数,幸运的是客户端处理一般不会存在并发的情况(C/S)应用,一般来说客户端的程序处理时间是一致的,主要区别在于空闲时间的不同。基本而言,我们可以通过v$event_histogram来衡量客户端运行。
比如以下快照运行:
select * from (select e2.event,e2.wait_time_milli,e2.wait_count-e1.wait_count wait_count from mc$event_histogram e1,mc$event_histogram e2 where e2.id=1 and e1.id=0 and e2.event#=e1.event# and e2.wait_time_milli=e1.wait_time_milli)
where wait_count >0 and event ='SQL*Net message from client' order by wait_time_milli;
运行结果:
EVENT WAIT_TIME_MILLI WAIT_COUNT
1 SQL*Net message from client 1 6247
2 SQL*Net message from client 2 24
3 SQL*Net message from client 4 11
4 SQL*Net message from client 8 4
5 SQL*Net message from client 16 3
6 SQL*Net message from client 32 1
7 SQL*Net message from client 128 2879
8 SQL*Net message from client 256 8
9 SQL*Net message from client 512 1
10 SQL*Net message from client 2048 2
11 SQL*Net message from client 16384 31
12 SQL*Net message from client 32768 2
13 SQL*Net message from client 65536 17
14 SQL*Net message from client 131072 3
基本而言,我们可以把64~128ms作为客户端处理时间。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/92650/viewspace-775241/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/92650/viewspace-775241/