关键词不能为空

当前您在: 主页 > 英语 >

EAS常见性能问题处理指引

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-28 13:35
tags:

-

2021年2月28日发(作者:jad)




金蝶软件(中国)有限公司



EAS


常见性能问题处理指引




修订记录



版本



1.0








修改日期



2007-11-23





作者



陈钧、蒋俊






审核人



胡锦敏



初始版本






修改要点




目录



1


概 述


...................................... .................................................. .................................................. .


2



1.1


目标



.


.. .................................................. .................................................. ....................


2



1.2


范围



.


..................................... .................................................. ...................................


2



1.3


读者



.


.. .................................................. .................................................. ....................


2



性能问题处理



.

................................................ .................................................. ........................


3



2.1


性能问题反馈要求



.


............................... .................................................. .................


3



2.2


EAS


部署模型


......... .................................................. ...............................................


3



2.3


问题归类



.


.................................................. .................................................. ..............


5



2.4


磁盘空间满



.


.................................. .................................................. ..........................


7



2.5


残留


EAS

< br>进程无法停止


............................. .................................................. ..........


8



2.6


EAS


进程消失


......... .................................................. ...............................................


9



2.7


EAS


无法启动


......... .................................................. ...............................................


9



2.8


CPU


持续高消耗


< br>............................................... .................................................. ...


1


0


2.9


换页空间使用率高



.


.............................................. ..................................................


11


2.10


IO


等待率高


.......... .................................................. ...............................................


1


2


2.11


Apusic License


失效



....................................... .................................................. ......


1


2


2.12


数据库碎片化严重



.


.............................................. ..................................................


1


3


2.13


数据库阻塞和死锁



.


.............................................. ..................................................


1


4


2.14


网络质量问题



.

................................................ .................................................. ......


1


5


2.15


客户端内存泄漏



.

< br>............................................... .................................................. ...


1


5


2.16


Portal


方式的性能问题


... .................................................. .....................................


1


6


运行日志收集



.

................................................ .................................................. ......................


1


7


3.1


自动收集


< br>.


................................... .................................................. ...........................


1


7


3.2


RPC


性能日志开关


....... .................................................. .......................................


1


7


3.3


手工收集



.


.................................................. .................................................. ............


1


7


3.4


数据库性能数据收集



.


.............................. .................................................. ............


1


9


3.4.1


DB2


后台性能相关日志收集


................. .................................................. ....


1


9


3.4.2


ORACLE


后台性能相关日志收集



....................................... .........................


2


9


2


3




1




/



30






金蝶软件(中国)有限公司



1



概述



1.1


目标



本文档描述


EAS


常见的性能问题、产生原因和诊断处理方法 。对于无法在现场分析处


理的性能问题,


提供相关的运行日志收 集方法,


包括工具自动收集和手工收集,


收集的日志

< p>
可以提交给专家进一步分析诊断。



1.2


范围



本文档描述

EAS


部署模型,根据日常支持经验归纳整理了常见的性能问题以及诊断解


决办法。不涉及更深入的日志和性能报告分析技术。适用


EAS V5.4


及之前的版本。



1.3


读者



本文档适用于

< br>EAS


实施人员、系统管理员、以及总部技术支持类人员参考。

< br>




2




/



30






金蝶软件(中国)有限公司



2



性能问题处理



2.1


性能问题反馈要求



为保障

< p>
EAS


的运行性能,并能在出现问题后有效的处理和反馈,我们把相关实施 能力


划分为三个层次:



1




能够根 据实际软硬件环境完成部署和参数调整工作,保障


EAS


基本运 行性能。



2




具备< /p>


EAS


运行性能的监控能力,在出现问题的时候能够有效描述问题 场景,收集


必要的数据用于分析。



3




具备基 本的问题诊断和分析能力,


针对环境和部署相关的问题,


有能力 自行处理和


解决。




1



2


两条是实施人员应该具 备的基本能力,第


3


条我们则希望通过本文档使实施人


员具备常见问题的自行解决能力。



当系统在正 式上线前,应该确保操作系统、


EAS


、数据库相关参数与其实 际软硬件配置


相匹配,


以保障上线后的基本运行性能,


具体参数配置建议请参考


mykingdee


产 品中心



EAS


实施环境指南》


。正式上线后,如果出现了性能和稳定性方面的问题,现场实施人员应能够

处理一些常见的问题,


对于无法自行处理的,


应能有效收集 相关环境信息和系统日志,


便于


总部技术人员进一步分析处理。 当需要总部协助处理性能问题时,应填写《


EAS


实施问题


处理指引与信息反馈表格》


,并根据本文档的描述收集必要的性能数 据和系统日志。



2.2


EAS


部署模型


掌握


EAS


部署模型,对于分析和诊断

EAS


性能问题会有很大的帮助,下图是


EAS

< p>


络图,可以看到


EAS


是典型的三层模型。



EAS


应用服务 器集群


EAS


客户机


EAS

< p>
服务器


1


EAS


客户机< /p>


集群前置机



Load Balance r



EAS


服务器

2


。。。


数据库服务器


EAS


客户机


EAS


服务器


n




3




/



30






金蝶软件(中国)有限公司



数据库端 主要运行各种


DBMS


系统,如


Ora cle



DB2


SQL


Server


等,可能会采用单

< br>台处理能力很强的服务器来运行,也可以组成集群,具体组建方式取决于


DBMS


本身的架


构和能力。



在应用服务器层,金蝶


EAS


提供了灵活的可扩展模型 以满足从中小规模到大规模的应


用需求,并发用户不多的客户可以采用单实例的方式,只 需部署一个


EAS


,而对于更大规


模的 客户,则应该采用


EAS


集群来满足对并发处理能力、可靠性、 可扩展性的需要。


EAS


采用


J2EE


作为基础架构,


因此可以在多种操作系统平台上运行,


包括


Linux



AI X



HP-UX


Windows


等。



客户端和服 务器之间则通过局域网或者广域网连接在一起,采用标准的


TCP/IP


协议进


行通讯。


客户端理论上也可以在多种操作系统平 台上运行,


但由于很少有客户的桌面采用非


Windows


环境,所以


EAS


客户端在其它操作系统环 境没有经过充分测试验证,本文档也不


会涉及在其它操作系统运行


EAS


客户端的情形。



AppServer


EAS Server (Slaver)


EAS


业务组件



Session


状态数据


HTTP S erver


R


AppServer


EA S Server (Master)


EAS


业务组件




工作流、调度服务、


网络控制、


License




基础服务


状态数据


HTTP Serv er


R


AppServer


EAS Server (Slaver)


EAS


业务组件



Session


状态数据


HTTP Server


R


RPC Server


Session



态数据


RPC Server


R



RPC Server




HTTP


ea s client files


Client


EAS Client


EAS


业务组件



RPC Client


R


服务器连接信 息


/eas/client/


TCP


C luster Server


Cluster Controler


RPC Server


端口:


11034


R


集群配置数据


ormrpc_ties


自动更新组件


1


、对于集群控制器而言,无所谓


主从服务器,


Master< /p>


是由从服务的


bosconfig


指定的 。


2


、一些需要在内存中保存状态的


基 础服务在集群中只能有一个运行


实例,运行这些实例的服务器称之



Master



3


、一旦


Master


出现故障,将影响


所有客户端使用,此时


Master



Slaver


都必需重新启动。


上图是进一步分解的


EAS


部署模型,其中展示了一个


EAS


集群控制器和三个


EAS

< p>


行实例。有必要对这些概念做一下解释:



集群控制器(


Cluster Controller



:又称集群前置机、负载均衡器。对于客户端而言唯一


可见的


EAS


服务器,当其接收到客户端的连接请求后 ,会根据某种负载均衡算法将调用转


发到后端的


EAS


实例,并将结果返回给客户端。可以为每个实例指定一个静态权重。


< /p>


主节点



Master

< br>)



又称主实例。


EAS


的某些基础服务,


如调度服务、


网络控制、< /p>


License


管理等在整个集群环境中只能有一个运行实例,< /p>


我们称之为单例服务。


运行了这些单例服务



EAS


节点称之为主节点。一个集群只能有一个主节点。< /p>



从节点(


Slaver



:又称从实例。集群环境下可以有一个或者多个从实例,运行除了基


础服务以外的所有


EAS


组件。当其中的程序需 要访问基础服务的时候,会自动调用主节点


中的基础服务,这种调用关系是在从节点的< /p>



中配置的,部署工具会自动完成


此工作。



EAS


服务器端口:由上图中的


RPC Server


组件监听的


TCP


端口, 默认为


11034


,运行


< p>
4




/



30






金蝶软件(中国)有限公司



期客户端的所有服务请求通过此端口完成。


< br>EAS


自动更新端口:由上图中的


HTTP

< p>
Server


组件监听的


TCP

< br>端口,如果应用服务器


采用


Apusic


,默认为


6888


。其为


Po rtal


的访问端口,同时也是客户端进行自动更新的服务


端口 。




EAS


应用服务器集群的特点


1




1.



支持本机和多机集群



?



一台机器可以部署多个

< p>
EAS


组成本机集群。



?



可以将多个服务器上


EAS


组成多机集群。



?



两种模式可以混合使用。



?



异构的应用服务器之间可以组成集群。



2.



负载均衡和失效恢复



?



大并发时减少单点内存占用,降低故障机率。



?



分散故障范围,节点故障只影响连接到该节点的用户。



?



一台应用服务器停机,后续连接转移到正常服务器。



?



当停机的应用服务器重新启动后,会自动加入集群。



3.



自主集群技术



?



不依赖操作系统或者应用服务器的集群技术。



2.3


问题归类



请参照下表对发生的性能问题进行归类。



1


确定问题的严重


/


紧急程度,影响范围



应用服务器无法启动;数据库无 法启动;服务器无


法连接;网络中断等。


大面积出现白屏;难以登录;响应时间衰减严重;


无法自动更新;

< br>


部分客户端慢;


部分功能慢;


特定条件下功能慢等。



1.1


系统已经瘫痪。



1.2


系统整体非常缓慢。



1.3


部分用户


/


功能慢。




2


出现性能问题之前发生过什么变化?(起因分析)


< p>
操作系统,数据库,


EAS


服务器如果最近刚好做 过


升级等,可能是导致问题的诱因。



操作系统的参数,


EAS


配置,数据库参数调整不当

< p>
可能导致性能问题。



网络如果发生故障,比如受 到蠕虫病毒攻击、路由


器故障等,可能影响网络质量进而影响


E AS


性能。



企业的其它业务系统是否 也有故障?其诱因可能也


是导致


EAS


性能问题的根源。



2.1


最近系统做过升级或者打过补


丁没有?



2.2


最近服务器配置调整过没有?



2.3


最近网络是否有过调整变化?



2.4


其它业务系统是否也有问题?




根据日常性能支持积累的经验,


结合


EAS


产品架构,对常见的影响


EAS


性能的因素进


行分类整理如下:




1



EAS


应 用集群未来的发展方向是满足大规模应用下的高可用要求,单点失效不会影响客户端业务操作,

< br>请注意未来版本的变化。




5




/



30






金蝶软件(中国)有限公司



#


1


类别



应用服务




现象



磁盘空间满



引发问题



EAS


无法启动;


< br>客户端报


License


过期;



操作系统崩溃;



EAS


无法启动;



常见诱因



日志占满磁盘空间;



EAS


发生


Dump




大的升级或者补丁占用;



未停止


EAS


情况下调整


部署结构;



EAS


进程故障;



内存参数超过操作系统


限额;



服务器远程会话注销;



JDK Bug


引发;



换页空间用尽;



内存参数设置过大;



Apusic License


不匹配;



防病毒软件冲突;



残留


EAS


进程没有停止;



并发压力过大;



部分业务功能异常;



内存参数不当,


GC


频繁;



EAS


内存参数设置过高;



EAS


内存泄漏;



其它应用占用过多内存;



Apusic License


已过期;



升级后忘了替换


Apusic


Lic ense


文件,集群环境


只替换了主实例,

未替换


其它实例;



2


残留


EAS


进程无法


停 止



EAS


进程消失



3


客户端报中断错误



4


EAS


无法启动



EAS


无法使用



5


CPU


持续高消耗



EAS


响应变慢,灰屏;



6


换页空间使用率高



EAS


响应变慢,灰屏;



EAS


、操作系统崩溃;



7


Apusic License


失效



自动更新缓慢或者报错;



EAS


运行缓慢,灰屏;


< p>
Portal


功能慢,页面无法


正常显示;



数据库服


务器



磁盘空间满



8


操作系统、数据库崩溃;



事务日志占满空间;



数据库无法连接;



数据库运行日志过多;



EAS


报数据库异常;



EAS


响应变慢;



数据库参数设置不当;



统计信息过旧;



索引缺失;



功能缺陷;



9


CPU


持续高消耗



10


换页空间使用率高



EAS


响应慢;



操作系统参数设置不当;



操作系统,数据库崩溃;



数据库参数设置不当;



数据库运行异常;



其它系统影响;



EAS


响应慢;



EAS


响应慢;



数据库参数设置不当;



全表扫描过多;



未设置


EAS


临时表空间;



随时间推移逐步碎片化;



11


12


IO


等待率高



数据库碎片化严重




6




/



30






金蝶软件(中国)有限公司



13


数据库阻塞和死锁



EAS


响应慢;


EAS


部分功能或大面积


灰屏;



自动更新缓慢;



EAS


响应慢;



EAS


响应慢;



事务执行时间过长;



功能缺陷;



网络不稳定;



带宽被其它应用占用;



缺少


QoS


配置;



网络不稳定;



网络负荷过大;



网络受到攻击;



客户端内存泄漏;



浏览器插件影响;



防病毒,防火墙影响;



其它程序影响;



14


网络



网络带宽过低



15


网络延迟和丢包严




EAS


客户端内存消


耗持续增加



Portal


方式登录及


使用慢< /p>



16


客户端



17


客户端越用越慢;





明确故障的具体类型后,参考下面 的章节针对具体类型问题的解决办法进一步处理。



2.4


磁盘空间满



这是一个容易被忽视的问 题,在我们支持过程中发生过多起因为磁盘空间满导致的故


障,包括应用服务器和数据库 服务器都存在,主要发生在


Linux



Unix


平台,其中


AIX



台见多。如果在应用服务器上出现类似问题,将会导致


EAS


无法启动,


EAS


可能报没有合


法的许可,


严重的可能导致操作系统故障。


如果发生在 数据库服务器,


则会导致数据库无法


连接,

EAS


功能报错等,错误信息可能包括无法扩展存储空间,无法创建连接等。



可能原因包括:系统日志写满磁盘,包括


E AS


应用日志,数据库运行日志以及事务日


志,系统中的某些服 务日志等。由于


Linux



Unix


系统存储划分大都有配额管理,如果配


额分配不足,日志清理不 及时,比较容易导致空间满的问题。在


AIX


平台下,


IBM JDK



认在发生

OOM


时会生成


Dump


文件,< /p>


文件可能会生成多个而且较大,


此时比较容易产生空


间不足的问题。



诊断方法:



#


1


检查磁盘空间占用情况



Linux


# df


Filesystem 1K-blocks Used Available


Use%


Mounted on


/dev/sda2 33665576 11376212 20579248 36% /


tmpfs 1038404 0 1038404 0% /lib/init/rw


udev 10240 44 10196 1% /dev


tmpfs 1038404 0 1038404 0% /dev/shm


2


AIX


# df


Filesystem 512-blocks Free


%Used


Iused %Iused Mounted on


/dev/hd4 3145728 1240352 61% 10811 8% /


/dev/hd2 104071168 27652200 74% 315393 9% /usr


/dev/hd9var 2097152 910352 57% 79476 44% /var


/dev/hd3 4456448 1168840 74% 2786 3% /tmp



7




/



30






金蝶软件(中国)有限公司



/dev/hd1 16777216 11692400 31% 40780 4% /home


/proc - - - - - /proc


/dev/hd10opt 18874368 3378824 83% 167095 28% /opt


3


HP-UX


# bdf


Filesystem kbytes used avail


%used


Mounted on


/dev/vg00/lvol3 589824 296000 292080 50% /


/dev/vg00/lvol1 311296 191440 119016 62% /stand


/dev/vg00/lvol8 17301504 10098944 7179928 58% /var


/dev/vg00/lvol7 7831552 3026032 4768024 39% /usr


/dev/vg00/lvol4 212992 182512 30352 86% /tmp


/dev/vg00/lvol6 6324224 5108936 1205848 81% /opt


/dev/vg00/lvol5 524288 238112 283968 46% /home


4


Windows


地球人都知道。



解决办法:



1.



检查并清理日志文件。



2.



扩展存储空间。



2.5

< p>
残留


EAS


进程无法停止



这种情况也是导致


EAS


无法启动的常 见原因之一,


通常发生在


EAS


出现故 障时,对应



Java


进程可能处于异 常状态,导致无法执行停止命令。另外,当在没有停止


EAS


的 情况


下,重新部署


EAS


修改端口也可 能导致残留


EAS


进程无法停止,原因是


EAS


停止脚本会


根据配置文件中的端口号去连接

< p>
EAS


进程发出停止命令,但由于端口已经改变致使无法停



EAS




诊断方法:



#

检查是否存在残留


EAS


进程



1


Linux


AIX



# ps -ef | grep java


root


553058


1 0 15:35:10 pts/1 7:17


HP-UX


/usr/eas_gold/eas/jdk/bin/java -Xms256m -Xmx1024m -verbose:gc


-Xverbosegclog:/u sr/eas_gold/eas/server/profiles/server2/logs/jvm_g c_2007


-11-22_ -ne=Asia/Shanghai


-DEAS_INSTANCE_NAME=server2 -DAPP_SERVER_HOME=/usr/eas_gold/apusic


-DAPP_SERVER_TYPE=apusic -DEAS_HOME=/usr/eas_gold/eas


根据输出结果中的路径 信息判断是否是


EAS


进程,上例中


5 53058



EAS


进程号。




注:


HP-UX< /p>


默认输出的命令行长度可能太短,无法提供足够的信息,可以通过修改

/etc/default/ps


文件,设置


DEFAU LT_CMD_LINE_WIDTH=1020


,使


ps


命令可以输出


更多内容。




如果存在残留的


EAS


进程,在启动


EAS


的时候可以看到如下输出:



ception: Address already in use


at (Native Method)


2


Windows


任务管理器可以 看到正在运行的


java


进程,如果系统中还有其它

< p>
java




8




/



30






金蝶软件(中国)有限公司



序可能, 可能无法判断是否是


EAS


的进程。此时可以在命令窗口中执行


eas/server/bin


下的


/v


得到详细的命令行信息,


判断是否是

EAS



java


进程。或者使用 其它进程管理软件来帮助判断。




解 决办法:


强行杀掉


EAS


对应的


Java


进程。


Linux

< br>、


Unix



kill -9



<


进程


ID


>



Windows

< br>:


在任务管理器中停止


EAS


进 程。



2.6


EAS


进程消失


进程消失通常是在操作系统检测到不应该发生的异常行为后,通知


Java


进程自行终止


或者强行将其终止。


< p>
如果


JVM


的内存参数


- Xmx


设置过大,超过了操作系统的限制,在


JVM

< p>
扩展内存的时


候,


就可能会发生超过操作系统限额 而被操作系统终止的情况;


通常管理员都是远程登录到


服务器上 启动或者停止


EAS


服务器,


如果在退 出时注销了会话,


Windows


系统会把

EAS



程终止,


Linux



Unix


在使用某些版本的


JDK


时会终止


EAS


进程 ;如果操作系统内存紧张


导致页面空间消耗过大,


EAS


进程也可能会被操作系统牺牲掉以保障操作系统正常运行;


某些版本的


JDK


存在


Bug


在并发压力较大的情况下会出现


JVM

< br>执行非法指令或者非法访


问内存的情况,此时操作系统通常会毫不犹豫地将进程终 止。



#


检测


EAS


进程消失



1


Linux



AIX




EAS


管理控制台中可以查看

< p>
EAS


进程(包括本机器上的所有


EAS



HP-UX



例以及 集群前置机)的状态,如果进程


ID


为空,状态为“停止”


,则表


Windows


明对应的


EAS


实例没有启动,


如果之前并没有停止过,


则表明


EAS


进程

自行消失了。



解决办法:



1




Win dows


环境下,可以将


EAS


注册成 一个服务,这样即使注销了远程会话,


EAS


也不会终止。


Linux



Unix

环境则需检查相应的


JDK


版本,有类似问题的情况下,< /p>


建议使用


EAS


所带的

< br>JDK


版本。



2




检查并 确认操作系统的相关参数没有问题。如果是


Windows


环境 ,最大内存参数


不能超过


1536M


, 其中


Windows


2003


没有安 装


sp2


的情况下,最大只能设置为


1 024M




2.7


EAS


无法启动


EAS


无法启动虽然是比较严重的故障,但通常比较容易诊断,主要有以下几种成因 :


Apusic


License


非法 ,可以从


Apusic


日志中看到相关的提示信息;有无法停止 的残留


EAS


进程,导致


EAS


启动的时候无法监听相应的


TCP


端口,同样 可以从


Apusic


日志中看到相


应的 异常信息;


最小内存参数


-Xms


设置 过大,


超过操作系统的限额,


使得


JV M


无法初始化,


自然也无法启动


EAS



另外在


Windows


平台发现有卡巴斯基等防病毒软件和


JVM


有冲突导



EAS


无法启动的案例。

< p>


#


如何诊断


EAS< /p>


无法启动的原因



1

< br>Linux



AIX



在管理控制台启动


EAS


的过程中查看


Apusic


日志,


如果没有看到有最新


HP-UX




Ap usic


日志生成,通常是


JVM


无法 初始化引起,此时需要从命令行


Windows


方式调用


startserver


脚本启动


EAS< /p>


,查看控制台输出判断无法启动的原


因。




9




/



30






金蝶软件(中国)有限公司



请参考


[Apusic


Licens e


失效


]



[


残留


EAS


进程无法停止


]


章节的描述进一


步诊断。在


Windows


中,可以检查事件查看器中是否有异常信息做进一

步判断。



解决办法:



1




根据操 作系统的内存大小以及集群实例的数量设定合适的内存大小,


避免超过系统内存


总量导致无法启动。



2




修改操 作系统参数,确保


JVM


可以使用足够多的内存。如果是


Windows


环境,最大内


存参数不能超过


1536M


,其中


Windows < /p>


2003


没有安装


sp2


的情况下,最大只能设置为


1024M




3



< br>升级防病毒软件或者更换其他类型的防病毒软件,避免和


JDK

< br>之间的冲突。



2.8


CPU


持续高消耗


< br>CPU


出现短暂的高消耗是正常的,一个服务请求需要一个


CPU


来处理,碰到一些耗时


的操作,会出现一段时间某个< /p>


CPU


100%


的情况。但如果所有< /p>


CPU


的使用率都居高不下,


伴随着系统 性能的快速下降,以及个别


CPU


长时间


100%


,都是不正常的。



应用服 务器某个


CPU


出现持续


100%


的情况,可能存在程序上的问题,导致


CPU


消耗


一直很高,另外内存参数设置过低或者内存存在泄漏,可能引发频繁


GC


,也会出现


CPU


利用 率偏高的情况。


数据库服务器出现某个


CPU

< br>持续


100%


的情况,


可能碰到 执行计划效率


过低的情况。




诊断方法:



#

检查


CPU


是否存在持续高消耗的情况


1


Linux


# vmstat 5 1440


间隔


5s


收集


1440


次(


2


小时)



procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----


r b swpd free buff cache si so bi bo in cs us sy id wa


2 0 2328 388084 38388 1647204 0 0 1 2 1 2 2 1 97 0


7 1 2328 373940 38404 1648748 0 0 0 337 3130 17300 41 6 53 0


2 0 2328 355828 38424 1650548 0 0 0 348 3110 17184 43 6 51 0



需要重点关注的列:



r :


当前正在运行的内核线程,如果数值总是超过


CPU


的数量,说明系统的


负荷过重。



b :


被阻塞的线程,阻塞的原因通常是在 等待


IO


,如果持续有阻塞的线程,


说 明


IO


存在瓶颈。



us



user

进程的


cpu


占用率,如果持续很高,反映


CPU


很繁忙。



sy :


操作系统内核的


CPU


占用率,如果持 续很高是不正常的。



id


:空闲率,越高说明系统越闲。



wa


:等待率,通常是


IO


等待,如果持续 超过


30


,说明有比较严重的


IO



题。




或者



# top


查看操作系统的顶级活动




10




/



30






金蝶软件(中国)有限公司



2


AIX


# vmstat 5 1440


kthr memory page faults cpu


----- ----------- ------------------------ ------------ -----------


r b avm fre re pi po fr sr cy in sy cs us sy id wa


3 0 985069 81881 0 0 0 0 0 0 1 4632 1320 2 1 97 0


2 0 985070 81882 0 0 0 0 0 0 1 1903 1190 1 1 99 0



# topas


查看操作系统的顶级活动



3


HP-UX


# vmstat 5 1440


procs memory page faults cpu


r b w avm free re at pi po fr de sr in sy cs us sy id


1 1 0 1359926 177584 237 10 0 0 0 0 0 1575 13289 654 10 1 89


1 1 0 1407419 177484 279 13 0 0 0 0 0 1106 5451 257 1 0 99



# top


查看操作系统的顶级活动



4


Windows


打开任务管理器


(按


Ctrl+Shift+ESC


组 合键)



点击


“性能”


页签,


查看


CPU


总体利用率 ,点击“进程”页签,点击列标题“


CPU


< br>,可按


CPU


利用率排


序。




解决办法:



1


.需要专家协助诊断解决。



2.9


换页空间使用率高



换页空间使用率过高通常意味着内存资源吃紧,


可能会导致频繁的换页操 作降低系统运


行性能,如果换页空间使用率超过


60

< p>
%,并且有增加趋势,可能引起应用以及操作系统故


障。

< br>


诊断方法:



#


检查换页空间使用情况



1


Linux


# swapon



s


Filename Type Size


Used


Priority


/dev/mapper/VolGroup_ID_5977-LogVol0 partition 1769464 2328 -1



2


AIX


# lsps



a


Page Space Physical Volume Volume Group Size


%Used


Active Auto Type


hd6 hdisk2 rootvg 2560MB 11 yes yes lv


3


HP-UX


# swapinfo


Kb Kb Kb PCT START/ Kb


TYPE AVAIL USED FREE


USED


LIMIT RESERVE PRI NAME


dev 16777216 52 16777164 0% 0 - 1 /dev/vg00/lvol2


reserve - 5098036 -5098036


memory 8376408 1867580 6508828 22%



11




/



30






金蝶软件(中国)有限公司



4


Windows


使用性能监视器


2



监控


Paging File


中的


%Usage



%Usage Peak




解决办法:



1.



调整


E AS


、数据库系统的内存相关参数,保证足够的物理内存可用。



2.



如果是其它应用引起,协调客户解决其它应用的内存问题。



2.10


IO


等待率高



由于应用服务器主要处理业务逻辑,除了向磁盘写一些日志外,没有其它


IO


操作,通


常不会有


IO


等待问题,除非内存紧张导致频繁换页而产生较高的


IO


等待。 数据库服务器


会处理大量的数据,比较容易发生高


IO


等待的情况,比如存在大量的表扫描,或者存储设


备的

< br>IO


吞吐能力有限等。




诊断方法:



#

检查


IO


等待情况



1


Linux


AIX



HP-UX


利用


vmstat


可以诊断是否存在较高的


IO< /p>


等待情况。请参见


[


CPU


持续高消



]


章节的描述。




还可以使用


iostat



sar


等操作系统命 令等进行诊断,请查看相关命令的文


3





使用性能监视器监控


Physi calDisk


中的


%Disk Time



Avg. Disk Queue Length




Disk Read Bytes/sec



Disk Write Bytes/sec




2


Windows




解决办法:



1.



检查存储设备是否存在瓶颈或者故障并排除。



2.



检查操作系统、数据库参数配置是否不当并调整。



3.



专家协助分析。



2.11


Apusic License


失效



除了


EAS



License


控制,


Apusic


也 有,


这个问题往往容易引起忽视,


导致


Apusic License


过期引起自动更新以及


Port al


方式使用的问题,在


EAS


集群环 境下,每个


EAS


实例对应一



Apusic


实例,而每个


Apusic


实例下面都需要复制一份


License


文 件


4





诊断方法:



#


检查


Apusic License


是否过期



1


Linux



AIX



HP-UX



Windows


在启动


EAS


的过程中或者从


Apusic


的启动日志中查看


Apusic License



出信息。




如果是没有


License


限制的状态,可以看到类似如下输出内容:



IP granted to 192.168.1.1



2


3



请参考


[


错误!未找到引用源。


]

< p>
章节中关于性能监视器的使用说明。




取决于操作系统类型以及是否安装了相关组件,不一定可以使用这些命令。



4



目前


EAS


使用的


Apusic



4.0.3


版本,将会支持的


Apusic 5 .1


版本所有实例只需一份


License

文件。




12




/



30






金蝶软件(中国)有限公司



No time limits


No connection limits



5


如果没有


License


或者


License


已 经过期,可以看到如下内容




Licensed from 2006-07-26 to 2088-09-13


Connections limited to 15


< /p>


如果


License


< br>IP


地址不匹配,


Apusic


将无法启动,



ERROR [] IP not granted for 192.168.1.1



如果< /p>


License


文件格式错误,


例如把< /p>


EAS


License


文件当成


Apusic


License


了,则会看到如下输出信息:

< br>


ERROR [] Server cannot start without a valid license



解决办法:



1


.更换正确的


License


文件、购买并申请合法的


License


文件。



2.12


数据库碎片化严重



无论是文件系统还是数据库系统,随着时间的推移,或多或少都会存在碎片化的趋势,


如果碎片化程度不高,


通常不需要处理。


从已经 处理的案例来看,


数据库碎片化问题最容易


发生在使用


Oracle 10g


的环境中,主要原因是


Oracle 10g


默认会打开回收站(


Recycle Bin

< p>


选项,删除的对象会放到这个回收站中而不是真正删除,而


EAS


会使用特有的临时表(利


用固定表实现,表名 为


ZT


或者


VT


开头的就是)来满足业务上的处理需求,这类表会被比


较频繁的创建和删除,如果


EAS


临时表和数据表共用同一个表空间,则会导致碎片化的趋


势加剧,从而引发性能问题,严重的情况下,会导致


EAS


性能大幅度衰减。



诊断方法:



#


如何判断数据库的碎片化程度



1


Oracle


进入


sqlplus< /p>


,执行如下


SQL



SQL> select tablespace_name,sqrt(max(blocks)/sum(blocks))*



(100/sqrt(sqrt(count(blocks)))) FSFI



from dba_free_space



group by tablespace_name order by 1;


TABLESPACE_NAME


FSFI



------------ ----------------------------------------- ----------


EAS_D_ABC_STANDARD 66.2830849


EAS_D_ABC_TEMP3 64.8341444


EXAMPLE 67.3910029


SYSAUX 10.9872698


SYSTEM 81.2139268


UNDOTBS1 48.4495682



5



即使没有购买


Apusic License

< br>,默认也会有


15


个连接的开发


License


,在生产环境通常是不够用的。





13




/



30






金蝶软件(中国)有限公司



USERS 100



FSFI


列即代表自由空间 碎片索引(


Free


Space


Fragmentation


Index


,其值


越小,反映表空间的碎片化程度越高,如果低于< /p>


10%


,则应该进行表空间


整理以消除碎 片。如果这个


SQL


执行需要时间很长才能出来,同样反映表< /p>


空间碎片化比较严重,见过执行


10


几分 钟才能输出结果的案例。




解决办法:



3





EAS


临时表创建专门的表空间,


EAS< /p>


管理控制台里数据中心管理中的存储管理


功能可以自动完成此工作 ,完成后请反部署再部署一下数据中心(集群环境需要


在每个实例中做此反部署、部署动 作)




4




通过逻 辑备份和恢复(


exp/imp


或者


e xpdp/impdp


)来消除碎片,需要停机操作。



5




Oracle 10g


以上版本有表空间重组

< br>(


reorg



功能,


可以在线重组,


做之前请先做备


份。

< p>


2.13


数据库阻塞和死锁



首先要明确阻塞和 死锁是两个不同的概念,


阻塞指的是一个事务在等待另外事务释放锁

定的资源才能继续运行,


而占用资源的事务可能需要执行较长时间才能完成,


导致第一个事


务出现等待,等的时间长了,就会形成阻塞,

< p>
如果出现大面积的阻塞,


对性能会产生严重影


响。


如果第二个事务继续运行的过程中发现其所需要的资源又被第一个事务所占用,


就会形


成相互等待的情况,


这就是死锁,一旦发 生死锁,


就必须牺牲一个事务,否则大家都无法继


续运行,


通常数据库会自动检测死锁并牺牲其中一个事务。


从这一点来看阻塞 比死锁造成影


响可能会更大。



SQL


Server



DB2


都有读锁,如果有许多长时间的事务在执行,可能会占用大量的资


源而造成其它 事务等待,形成阻塞,直到长事务执行结束。


Oracle


数据 库没有读锁,其采用


了特有的机制来保证读一致性而不会阻塞其它事务,所以

< p>
Oracle


数据库出现阻塞的几率会


更小一些。



诊断方法:



#


如何判断数据库出现了阻塞



1


通用



如果出现如下现象,基本可以判断是发生了阻塞。



1.



应用服务器、

< br>数据库服务器


CPU



IO


都不忙,


应用服务器个别


CPU

< p>


能出现持续


100%


占 用的情况。



2.


< br>EAS


某些功能一点击就会灰屏,但其它功能又正常。



Oracle 9i


可以用


Enterprise Manager

< p>
的性能视图和锁视图查看所占用的


情况来分析,


如 果发现有锁长时间不释放、


大量锁定,


并且有大量的

< p>
enqueue


等待事件,则说明发生了阻塞。



Oracle 10g


可以利用基于


W eb



Enterprise Manager


来分析阻塞,从顶


级活动、阻塞会话、实例锁等多个功能来判断是否发生了阻塞 。



请参考


[


DB2


锁日志信息收集


]


章节中关于锁 等待部分的描述。



2


Oracle


3


DB2


4


SQL Server


SQL Enterprise Manager


中的



管理



|


当前活动



|



/


进程


ID


中查看当前的


活动会话,如果发生阻塞会有明显的指示。





14




/



30






金蝶软件(中国)有限公司



解决办法:



1




找到引起阻塞的会话或者进程,强行中止其运行。



2




对于严重阻塞的情况,可能需要重启数据库。



3




专家协助分析处理。



2.14


网络质量问题



网络质量不稳定对


EAS


的运行性能可能产生较大的影响,网络质量的评价指标主要包


括带宽、延迟、丢包率等。要保障


EAS


正常运行,对于网络质量有如下要求:



1

< br>、每客户端


128kbit


的带宽保障,多人共用出口时 ,带宽要求:客户端数量


×


128/3





2


、 网络延迟低于


50ms


,丢包率小于


2 %




延迟


50ms


,丢包率


2%


两个条件同时存 在时,


使用系统会觉得



有点慢



,如果延迟超过


100ms



没有丢包现象的话,


性能会有明显衰减,

< p>
但应该在可接受的范围,


如果还伴随丢包,


带宽不 稳定,性能衰减就会比较大,这时候系统可能就难以使用了。




根据我们的支持经验,



1

< p>
、客户使用专线的情况下,延迟超过


100ms


, 通常意味着网络已经出现问题,同时会


伴随丢包,带宽不稳定等问题。

< br>



2


如果是基于


Internet



V PN



由于网络质量受当时


Inter net


稳定性的影响,


可能会出


现网络 质量较大波动的情况。




3


、如果总部和分支机构采用不同运营商的线路(比如总部使用电信,但分支机构使用

< p>
网通)


,网络质量可能较难保证。



如果存在不同运营商线路互联,


网络质量不稳定的情况,

在总部同时有不同运营商的出


口线路应该是比较好的解决方案,或者选择统一的运营 商。




诊断分析方法:请参考《


EAS


网络质量分析诊断方法》文档。



2.15


客户端内存泄漏



如果客户端存在内存泄漏的情况,会导致的一个现象就是


EAS


越用越慢,间歇性出现


白屏的情况,还可能会出现


OutOfMemory


的异常报错信息。如果客户端经常需要使用处理


大量数据的功能点,


比如非常大的报表业务等,


会需 要很多的内存来处理,


可能也会导致系


统变慢的情况。



诊断方法:



#


如何判断客户端存在内存泄漏



1


Windows


关闭所有非系统页签,调出

< br>EAS


主界面系统菜单中的系统信息功能,查看


jvm< /p>


内存的使用情况,点击“回收内存”按钮后,正常情况下应该占用数



M


左右,如果达到


200



M


或者更高,说明存在明显的内存泄漏。



当怀疑是某个功能引起的内存泄漏时,可以通过多次操作该功能后 退出,


再检查


jvm


内存占用,如果内 存出现持续增长不能释放的情况,即可判定


此功能存在内存泄漏。




解决办法:




15




/



30



-


-


-


-


-


-


-


-



本文更新与2021-02-28 13:35,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/681496.html

EAS常见性能问题处理指引的相关文章