在上午X点XX分,局方反映IP地址为XXX的tuxapp2队列有堵塞现场,登录到tuxapp2后, 长时间观察发现并无出现只升不降的情况,这种情况出现的原因主要为:程序执行缓慢,请求过多等原因。下面具体查探原因。
长时间观察发现队列排队现象并不表现为单一队列,多个队列均有此现象。
下面为具体描述:
tamcbs1l1serve
tamcbs2l1 7 50 1 0.5 ubss
qamcbs1l1serve
qamcbs2l1 7 50 1 0.8 ubss
qcscrm1l1serve
qcscrm4l1 5 50 1 0.8 ubss
qamcbs1l1serve
qamcbs1l1 7 100 2 0.5 ubss
qamcbs1l1serve
qamcbs4l1 7 100 2 0.5 ubss
qcscrm1l1serve
qcscrm1l1 5 100 2 0.8 ubss
qcscrm1l1serve
qcscrm2l1 5 100
2 1.0 ubss
qcscrm1l1serve
qcscrm3l1 5 150 3 0.9 ubss
qcscrm1l2serve
qcscrm4l2 6 150 3 5.0 ubss
qcscrm1l2serve
qcscrm1l2 7 450 9 8.6 ubss
qcscrm1l2serve
qcscrm3l2 5 1450 29 5.6 ubss
qcscrm1l2serve
qcscrm2l2 6 1650 34 8.5 ubss
以上数据表现出现排队的队列主要为qcscrm3l2、qcscrm2l2,几分后的数据为:
qcscrm1l3serve
qcscrm1l3 3 50 1
0.4 ubss
qcscrm1l3serve
qcscrm2l3 1 50 1 0.4 ubss
qcscrm1l3serve
qcscrm4l3 1 50 1 0.4 ubss
qcscrm1l1serve
qcscrm4l1 5 50 1 0.8 ubss
tcccrm1l1serve
tcccrm1l1 4 50 1 0.8 ubss
qcscrm1l1serve
qcscrm2l1 5 100 2 1.0 ubss
qcscrm1l1serve
qcscrm1l1 5 150 3 0.8 ubss
tcccrm1l1serve
tcccrm2l1 3 200 4 0.9 ubss
qcscrm1l2serve
qcscrm1l2 7 250 5 8.6 ubss
qcscrm1l2serve
qcscrm4l2 6 750 15 5.0 ubss
qcscrm1l2serve
qcscrm2l2 6 1450 30 8.5 ubss
qcscrm1l2serve
qcscrm3l2 7 1900 38 5.7 ubss
对比上面两组数据后发现,队列排队现场依旧存在,现查看是否存在Server挂起的现象。主要查看队列为qcscrm3l2,
> psr -q
qcscrm3l2
Prog Name Queue Name Grp Name ID RqDone Load Done Current Service
--------- ---------- -------- -- ------ --------- ---------------
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4265
20 1000 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4263
66158 3307900 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4262
63468 3173400 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4261
63047 3152350 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4260
63593 3179650 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4264
64210 3210500 QCS_CRM1_L2SVC
过几秒后的数据为:
psr -q qcscrm3l2
Prog Name Queue Name Grp Name ID RqDone Load Done Current Service
--------- ---------- -------- -- ------ --------- ---------------
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4266
76 3800 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4265
58 2900 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4263
66291 3314550 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4262
63476 3173800 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4261
63148 3157400 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4260
63738 3186900 QCS_CRM1_L2SVC
qcscrm1l2serve
qcscrm3l2 GRPCSCR+ 4264
64359 3217950 QCS_CRM1_L2SVC
从以上数据可以看出为qcscrm3l2服务的进程根据配置的自适应特性已经开始增加Server数来缓解队列中的排队现象,另外对比Rq Done的数据可以看出并无进程挂起问题,该队列的各个Server均服务正常,Tuxedo运行并无异常。
根据以上数据分析,各Server服务正常,持续的观察队列情况看到,队列中排队的消息数呈现为曲线变化,并不存在只升不降的情况,根据以上数据提出如下建议:
mso-char-indent-count:0;mso-list:l0 level1 lfo1">1、
优化程序代码,根据平台工程师XXX的建议优化了了SQL查询语句,以提高代码执行效率。
考虑到多次故障均为qcscrm开头的队列出现队列阻塞现象,可见该队列中的Server请求数目很大,当业务高峰时期可能出现Server数小,导致请求处理不及时,出现队列排队现象,虽然配置了自适应特性,但是在系统中Server数过多时,有可能很多的组的Server同时需要请求增加Server数,这就会导致自适应启动失败,这个现象在日志中也可以体现。因此建议增大qcscrm队列中的Server的最小数目,现在为5,建议增加到7,以及时应对业务高峰期的到来。
该贴被funny编辑于2014-2-18 16:06:39该贴被funny编辑于2014-2-24 9:45:59