公司SAP系统运行一段时间后会出现SAP系统访问速度慢的情况,这时需要分析、定位导致性能出现瓶颈的具体原因。
影响因素有很多方面,以S/4HANA为例,具体包括:
SAP系统本身提供的用于分析监控的工具包括:
无论导致性能瓶颈的根本原因是什么,最终都会体现在较高的会话响应时间(Dialog response time)上。虽然对系统进行详细的分析需要耗费很多时间,但是毫无疑问,分析会话响应时间是溯源问题根本最直接的方法。
因此,对会话响应时间了解的越深入,越能快速定位问题。
会话响应时间是在实例上测量的,它作为一个时间跨度,管理员需要对它测量的起止时间尤为清楚,测量开始于实例上的Dispatcher接收到用户请求的时点,结束于Dispatcher将数据包发送向前端的时点。正常情况下,它是不计算用户前端与实例之间的网络通信时间的,比较特殊的就是发生了数据往返的情况。
会话响应时间(Dialog response time)里面包含有很多个时间组件。包括Wait Time,Roll-in Time,Load and Generation Time, Enqueue Time,Processing Time, CPU Time,Database Request Time, Roll-wait Time等。
• Wait time较高: 空闲工作进程数量不足
• Roll-in time较高:Extended Memory不足或Roll Buffer中可用空间不足
available
• Load and generation time较高: SAP buffers (Program, CUA or Screen)太小
• Enqueue time较高: Enqueue table太大 , 太多锁请求
• Database request time较高: 数据库服务器存在CPU/内存瓶颈;数据库服务器通信问题,资源消耗高的SQL语句,数据库锁,缺失索引,缺失statistics或者是数据库buffers较小
• Processing time是CPU time的2倍及以上: CPU瓶颈
• CPU time较高:资源消耗高的ABAP程序,例如处理大表;ABAP代码质量不高
• Roll-wait time较高:SAP应用服务器实例与SAP GUI或外部系统间的通信问题,或者是请求的数据量较大