SAP ABAP性能优化分析工具

SAP系统提供了许多性能调优的工具,重点介绍下最常用几种SM50, ST05, SAT等工具:

1.工具概况

1.1 SM50 / SM66  - 工作进程监视器

通过这两个T-code, 可以查看当前SAP AS实例上面的工作进程,当某一工作进程长时间处于running的状态时,可以直接跳转到相应的程序位置进行查看和分析。


1.2 ST05 - 性能追踪


ST05是最常见的一个performance trance的工具,可以进行SQL、Buffer、Enqueue、RFC 、HTTP等多种类型的追踪, 通常我们使用ST05踪程序运行过程中的DB访问情况。


1.3 SAT - 代码分析工具


SAT是SE30的新版本,是非常好用的一种ABAP性能分析工具,可以按照不同的类型统计程序的运行状况,这也是常用的一个性能分析工具tcode。


1.3 SCI - 代码检查器


SCI是SAP Code Inspector的缩写,主要用于静态检查,包括性能、安全性、语法等等,Code Inspector默认集成在ATC(ABAP Test Cockpit)和SE09(传输释放)等过程中。用户可以通过定义自己的variant来实现自己特定的检查规则。


1.4 STAD (STATS) - 性能监控器


这个事物代码是用于系统性能监控(Performance Monior),用于查看系统在特定时间段的性能情况,资源使用和消耗情况。老的事物代码是STAD,新版的事物代码是STATS。


1.5 ST12 - 单个事物代码分析


ST12 (Single transaction analysis)更像一个wrapper的事物代码,其核心是对ST05, STAD, SAT等性能分析工具的集成,其使用方式和ST05类似,也即要有一个activate和deactivate的步骤。ST12也是常用的性能分析工具。

2. 工具的使用方法

2.1  ST05 性能追踪

使用ST05通常有三个步骤,即 Activate Trace >> Deactivate Trace >> Display Trace .

因此在使用ST05打开Trace后,要避免无关的操作,仅执行相关的目标程序。这样在Deactivate Trace后,看到的Trace结果更加的干净、没有干扰。

在Display trace的overview页面,其显示了程序的整个执行过程,我们可以通过查看Structure-Identical Statement来查看SQL的具体执行情况,在此可以找到最耗时的执行语句,同时双击可以进入相关的源代码位置。

2.2  SAT 代码分析工具

在SAT的主界面,输入要执行的程序,然后运行 -

运行完毕后,SAT返回相应的分析结果。在分析页面,我们可以看到不同部分执行时间所占的百分比,进而可以进一步分析具体的原因。

在SAT的 Hit List 页面可以直接看到,各部分耗费时间的排行。通常情况下,在程序开发完毕后,都要使用SAT来分析下程序各部分的执行情况,对于耗时较高的位置,进行性能优化。

2.3 SM50 / SM66 工作进程监视器

SM50 / SM66工作进程监视器 为了避免其他无关进程的干扰,通常在使用SM50 / SM66时,我们首先会过滤出与自己相关的process.

然后,在SM50中,找到并选中相关的目标程序的process,通过Administration >> Program >> Debugging即可跳转到相关的程序位置。

通过SM50中的debug跳转找到的位置,说明SAP AS 上的进程在此位置耗费了较长的处理时间,因而通常这个位置就是需要优化的程序位置。

2.4  SCI - 代码检查器

SCI已经集成在程序检查里:SE38程序左上角菜单选择Program->Check->Code Inspector如下:

这里会执行系统default默认的静态检查规则,并给出结果:

如果需要自定义检查规则,可以直接使用SCI事物代码,自定义Check Variant, Object Set和Inspection

2.5 STAD (STATS) - 性能监控器

STAD是SAP系统的性能监控器,记录着系统在某一特定时间段的运行情况。

可以使用选择条件(用户,事务码,程序等)来限定要查看的范围。 

结果会返回特定一个时间段,系统的使用情况。进而可以分析影响性能的主要原因。

针对于某一条特定的记录,双击进去,可以查看其各个维度对应的详细运行时间明细数据。

2.6 ST12 - 单个事物代码分析

在启动ST12时,可以通过选择屏幕,设置trace的相关参数。分析结束后,通过trace analysis来查看结果。

自定义Comment,username等参数,程序执行前,点开始手机Trace,程序执行后,点End trace&collect结束收集。

选中Trace分析运行结果带回,会产生对应分析运行结果Trace and edit comment for collection

点击Full screen还可以进一步参数选择。

可查看捕捉到的Trace明细运行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/47213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日OJ_牛客_删除公共字符(暴力+哈希)

目录 牛客_删除公共字符 法一代码(暴力) 法二代码(哈希) 牛客_删除公共字符 删除公共字符__牛客网 法一代码(暴力) 暴力查找方式,如判断第一个串的字符是否在第二个串中,在再挪动…

排序——归并排序及排序章节总结

前面的文章中 我们详细介绍了排序的概念,插入排序,交换排序与选择排序,大家可以通过下面的链接再去学习: ​​​​​​排序的概念及插入排序 交换排序 选择排序 这篇文章就详细介绍一下另一种排序算法:归并排序以及…

Uniapp基础篇(持续更新)

1. Uni-app常用内置组件 view 视图容器 scroll-view 可滚动视图区域,用于区域滚动。需注意在webview渲染的页面中,区域滚动的性能不及页面滚动。 swiper 滑块视图容器。一般用于左右滑动或上下滑动,比如banner轮播图。 image uniapp官方iam…

ROS服务通信机制实操Python

ROS服务通信机制实操Python 步骤流程vscode配置服务端客户端编辑配置文件编译并执行优化实现参数的动态提交优化先启动客户端后启动服务端 ROS服务通信的理论查阅:ROS服务通信流程理论 ROS服务通信的自定义srv数据的准备可以查阅:ROS服务通信自定义srv …

【学术会议征稿】第八届控制工程与先进算法国际论坛(IWCEAA 2024)

第八届控制工程与先进算法国际论坛 8th International Workshop on Control Engineering and Advanced Algorithms(IWCEAA 2024) 第八届控制工程与先进算法国际论坛(IWCEAA 2024)将于2024年11月1-3日在中国南京隆重举行。会议旨在为从事算法、控制工程与…

昇思25天学习打卡营第七天|应用实践/生成式/Diffusion扩散模型

心得 这个课程是一个劝退的课程。讲述了Diffusion扩散模型实现原理。提供了这个原理的一些公式推导。当然看这个推导是需要一定的数学基础的。这个课程这么写,是为了让那些数学不怎么好的,知难而退吗? 这个课程还是一个比较难以复制粘贴的课…

陪玩系统小程序模式APP小程序H5系统搭建开发

随着移动互联网的营及和游戏行业的蓬轨发展,陪玩服务应远而生并迅速唱起,陪玩系统小程序作为连接游戏玩家与陪玩师的桥梁,其模式系统的搭建与开发是得尤为重要,本文将洋细凰述陪玩系统小程宗模式系统的搭建开发流程,包…

Nginx入门到精通四(反向代理2)

下面内容整理自bilibili-尚硅谷-Nginx青铜到王者视频教程 Nginx相关文章 Nginx入门到精通一(基本概念介绍)-CSDN博客 Nginx入门到精通二(安装配置)-CSDN博客 Nginx入门到精通三(Nginx实例1:反向代理&a…

Spring Security 授权

基于request的授权 HttpSecurity 权限配置 Beanpublic SecurityFilterChain filterChain(HttpSecurity http) throws Exception {http.authorizeHttpRequests(authorize -> {authorize// 放行请求:针对含有 admin 权限的用户放行 /user/get 接口.requestMatchers("/us…

UE4-光照渲染、自动曝光、雾

目录 一.光源种类 二.灯光的移动性 三.自动曝光 四.指数级高度雾 五.实现光束 一.光源种类 1.定向光源 用来模拟现实中的太阳光。 2.点光源 比如现实中的灯泡 3.聚光源 4.矩形光源 是这几个光源中性能开销最大的,一般不用到游戏场景中,因为游…

【文心智能体】前几天百度热搜有一条非常有趣的话题《00后疯感工牌》,看看如何通过低代码工作流方式实现图片显示

00后疯感工牌体验:https://mbd.baidu.com/ma/s/6yA90qtM 目录 前言比赛推荐工作流创建工作流入口创建工作流界面工作流界面HTTP工具卡点地方 总结推荐文章 前言 前几天百度热搜有一条非常有有趣《00后疯感工牌》。 想着通过文心智能体去一键生成00后疯感工牌是不是…

Qt 多语言

记录Qt多语言的实现过程 目录 1.项目配置文件.pro配置 2.程序中的字符串用tr()封装 3.生成翻译文件 4.使用Qt语言家修改翻译文件 4.1使用Qt语言家打开 4.2 .更改文件配置 5. 生成qm文件 6.代码执行切换语言 6.1入口处 6.2 事件执行 0.效果 1.项目配置文件.pro配置 T…

js执行机制----事件循环

前言 问题 一般情况下,我们都认为js是顺序执行的 但是遇到下列情况 setTimeout(function(){console.log(定时器开始啦) });new Promise(function(resolve){console.log(马上执行for循环啦);for(var i 0; i < 10000; i){i 99 && resolve();} }).then(function(…

嵌入式人工智能(7-树莓派4B的IIC总线连接OLED显示中文与图片)

1、IIC总线 IIC总线&#xff08;Inter-Integrated Circuit&#xff09;是一种串行通信总线&#xff0c;也被称为I2C总线。它由飞利浦&#xff08;Philips&#xff09;公司在1980年代开发&#xff0c;用于连接微处理器和外部设备。 IIC总线使用两根信号线&#xff1a;SDA&…

删除windows系统里磁盘的恢复分区

说下我的情况 我买了块固态磁盘&#xff0c;插上主板&#xff0c;发现它自带了系统&#xff0c;这样我开机就会转到这块磁盘&#xff0c;即使在boot里改变也不行&#xff0c;后面我格式化了对应的盘符&#xff0c;但在磁盘管理里&#xff0c;发现有个EFI系统分区和恢复分区存在…

C++中的语句详细介绍:简单语句、条件、循环迭代语句、跳转语句、异常处理语句、try语句等

文章目录 C中的语句(1)简单语句A.空语句B.复合语句 (2)条件语句(3)迭代语句A.常规for循环B.范围for循环C.while和do...while (4)跳转语句A.break语句B.continue语句C.goto语句 (5)异常处理语句A.标准异常B.throw抛出异常 (6)try语句 C中的语句 (1)简单语句 简单语句包括&#…

卷麻了!字节软件测试四轮面试,成功拿到offer啦!

❗️❗️字节面试攻略❗️❗️ ⭕️招聘特点&#xff1a;关注可复制直接上手的人才&#xff01; 字节是人才扎堆的地方&#xff0c;人来就马上能做&#xff0c;只招现成的人才。 字节软件测试的面试题同样也是分了四轮&#xff0c;成功拿到ooffer了&#xff0c;给大家总结一下每…

MyBatis源码中的设计模式1

1. 建造者模式的应用 建造者模式属于创建类模式&#xff0c;通过一步一步地创建一个复杂的对象&#xff0c;能够将部件与其组装过程分开。用户只需指定复杂对象的类型&#xff0c;就可以得到该对象&#xff0c;而不需要了解其内部的具体构造细节。《Effective Java》中也提到&…

捷配PCB打样采用机械盲埋孔制造,有何优势?

在电子制造领域&#xff0c;盲孔&#xff08;Blind Vias&#xff09;与埋孔&#xff08;Buried Vias&#xff09;是两种关键的PCB&#xff08;印刷电路板&#xff09;过孔技术。盲孔特指那些连接内层走线至外层走线的过孔&#xff0c;但并不贯穿整个板体。相对地&#xff0c;埋…

镜舟科技荣获优秀数字化服务商奖,助力企业用数智技术重塑新消费

7 月 13 日&#xff0c;由 ITShare智享会和 BT商业科技观察主办的2024 第八届 FMCG 零售消费品数字化峰会于上海落幕。在现场&#xff0c;镜舟科技凭借在多家零售企业构建与实施智能数据中台解决方案的成功经验&#xff0c;荣获优秀数字化服务商奖项。 在会上&#xff0c;麦当劳…