关键词不能为空

当前您在: 主页 > 英语 >

SAP 系统性能优化实例

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-30 00:17
tags:

-

2021年1月30日发(作者:cwm是什么)


SAP Performance


浅析



本文来源于:


/tcsapbw/archives/




ABAP


开发中,


Program



Performance tunning


应该说是最基本也是最常见的工作内容,无论是


在新项目的开发、还是老项目的


maintainance


。同 时,关于


performance


,也是


ABAP


面试中几乎必


问的问题之一。在

performance


这方面,


SAP

< br>提供了专门的


BC490


课程以及相关跟进的

< p>
training




同 时,


Performance


以及程序优化乃至代码重构


(Refractory)


也是一项非常非常有技术含量的工作,自< /p>


己也仅所知所学皮毛而已,还有相当相当多的知识需要加深入学习。



这里,修改了自己以前的一份总结,重新记录一下,以加深印象以防遗忘。



以下记录过程中,使用测试程序:




在这个程序中,人为多循环了


100


次。



最后执行结果:






1.


使 用


STAD



SAP WorkLoad Business Transaction Analysis


Tcode: STAD.


使用该


T code


得到


single program/transac tion


运行时总体分析数据


(


查看用 户操作记录


)




其中,关于时间的概念:




其中,我们最经常用的是


Response Time, DB time


以及


CPU time.


当 拿到一个结果分析数据后,可以按以下的方案进行初步地判断后续应继续


Trace


何种结果。



|- CPU time > 40%(Response time - Dispatcher wait data) ==>Se30



Runtime Analysis


?



引起该结果的是由于一些


ABAP process

< p>
,例如


Loop




|- Database time > 40%(Response time - Dispatcher wait data) ==>St05: SQL Trace


?



引起该结果的是由于大量的直接操作数据据等



其中,这里,很多时候,我们就是直接使用的


Response Time


作为基数。



例如上面自己的 例程中,使用


STAD


可以得到如下的结果

(


注意


:


在进行筛选时系统时间方 面,一定是


Application server


的时间,而非自己


presentaion server


的时间


)



2.


使用


SE30: ABAP Runtime Analysis



1


SE30


简介



Tcode: SE30.


使用该工具主要用于


Transaction



program


背后


ABAP


的运行时分析

,


比如分析哪步运行耗时最多,


并通过分析得出为什么、然 后进行代码优化。



使用


SE30


主要分三步进行操作:



(1)


设定需要


Trace


的数据范围



决定将要分析哪些


object

哪些


data


哪些


process


等等


.


同时很重要的是,决定最后分析 结果的



粒度


”(Type of


aggregation: Full aggregation, aggregation per calling position, no aggregaion).


这些是通过设置


SE30


运行时的


variant


来实现的。



(2) Trace


跟踪



现在使用


SE30


可以直接从

< br>SE30


进入到所经


Trace



Transaction/Program



(


同一个


user session)


,也可以在另外



user session


中通过


menu


中的


a ctive runtime analyze


等方法来


tra ce


跟踪


.


(3)


分析结果



分析


SE30


的结果时,我们一般采取的是


渐进



的方式:先使用


full aggregation


可以得到程序的主要的


FMs


或者逻辑


处理单元;然后再细化一下分析粒度,


aggregation per calling position


,甚至


no aggregation


,这时就可以得到最详尽


的统计分析信息


: table list, hierarchy


等等。



以下是


SE30


的初界面

:



其中关于


in Parallet session


中,再补充一下,平时也用到了


:


按纽



“Switch on/off” of “In parallel session”



将会有一个


screen appears listing all r/3 work processes running on the current application server. To switch on


runtime analysis for the object,


选中它然


edit==>measurement==>switch on/off


其中完成上面第一步的设置


,

< br>可以进去进行设置,这里不再赘述


;


这里仅记录一下


aggregation


粒度的使


用,这也 是我们平时使用


SE30


最最基本的操作,因为设置它对我们< /p>


analysis


实在是太重要了,深有


体会呀。





2


)使用


SE30


分析程序



分析上面自己的程序。



这里仅是一次简单记录,使用的


aggregation level



no aggregation.



点击


execute


执行


:


程序会正常执行。最后返回到


SE30





这里,也可以使用


other file


去选择自己


trace


后的数据


(< /p>


注意,关于这些结果文件的保存:如果保存在


当前的


Application server


上的


file system


里,那么最大到


8


天 时间


)


;点击


evalute:



好,从这张结果图上,我们可以得出非常重要的信息:



一目了然:本程序中


DB Time


消 耗掉绝大部分时间,达到


95%


以上。所以,主要问题出在了读 写数


据库上,后续优化需从这方面考虑


(


比如再进行


ST05


,然后寻找更佳解决方案


).



另外,注意,最上面那一排的

< br>button


提供了更为详细的分析工具,利如


tabl e list, hit list,herarchy




(


但是注意,这是与在


variant


中设置的


aggregation level


相关的


)




A list of all called program parts or instructions, sorted according to gross contains one row for


each program part,


包括


name of the program part, gross time, net time,


以及


number of times this part


was called.


Group hit list


A list of individual calls of instructions grouped according to instruction categories(



forms, FM,


methods)


,包括


gross run time and the number of times the instruction was called.


Table hit list


A list showing accesses to DB tables,


包括


access name, number of accesses, table type,buffering


mode


以及一些其他信息



Hit list of


A list of all internal table accesses that indicates the internal name, the number of accesses, the


internal tables


gross and net time taken(absolute value and percentage), the memory required, and other info.


Call hierarchy


A list showing the chronological sequence of analyzed objects, indicating the gross and net time


taken and the call level.


Hit list


例如,我们上面的分析结果中,就看


hit list:

-


-


-


-


-


-


-


-



本文更新与2021-01-30 00:17,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/588103.html

SAP 系统性能优化实例的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文