浅论ABAP开发中性能优化的几种方式

33 阅读1分钟

一、编码规范上的优化

  1. for all entries in 使用时注意判空 排序;
  2. read table 时排序后使用二分法 即BINARY SEARCH;
  3. 避免loop循环嵌套,多采用read定位的形式;
  4. 递归时注意使用hashtable 读取内表,避免递归中嵌套select.

二、For all entries in 参数设置

在使用 for all entries in 时,ST05跟踪后 发现底层是拆分为多个sql statement,通过调整RZ11的参数,调整sql statement的个数 以此达到优化内表关联的效率;

三、使用with data

使用with data,采用临时内表直接操作hana数据库 优化查询效率 需要注意内存溢出问题

四、多线程 异步RFC

采用把部分逻辑包装成函数的形式,使用异步rfc调用,需要注意每个分包的执行时间不要过长。

五、合理运用CDS视图

在多表关联时,把大规模内表的SQL 封装成cds视图,从CDS视图取值

六、SAT性能分析

通过SAT对程序进行性能分析,具体定位到耗时的代码块,对代码逻辑分析;