• SAP PI PO 接口常见问题处理:队列平衡的统计平均分配


    场景描述

    异步 XI 消息的处理由 qRFC 条目的处理开始。qRFC 条目在 n 个并行队列中,分配基于随机算法。这意味着队列中的条目可能分配不均,即队列积压。队列积压可能有另一个原因,即队列条目在处理期间出错,随即冻结队列。

    要避免或移除队列积压,必须满足以下两个条件:
    •条目平均分配到 n 个并行队列。
    •如果存在队列积压,则只会在条目较少的队列中调度新条目。

    配置

    参数 EO_QUEUE_BALANCING_READ
    •参数 EO_QUEUE_BALANCING_READ 和参数 EO_QUEUE_BALANCING_SELECT 一同控制 EO 消息在队列中的分配,消息的数量由参数 EO_OUTBOUND_PARALLEL、EO_INBOUND_PARALLEL_SENDER 和 EO_INBOUND_PARALLEL 确定。如果参数的值是 0,则消息将在可用的队列中随机分配。这是缺省设置。不过,如果消息没有在队列中均匀分配,那么这将由该参数来抵消。如果 EO_QUEUE_BALANCING_READ 设置为值 n 且 n 大于零,那么平均来说,队列的当前填充级别将在每第 n 个消息后确定,并将存储在应用程序服务器的共享内存中。这些数据是确定队列的基础(请参阅参数 EO_QUEUE_BALANCING_SELECT 的描述)。值得注意的是,确定填充级别时需要进行数据库访问,因此会影响系统性能。所以,应根据消息的吞吐量和具体要求或均匀分配来确定 EO_QUEUE_BALANCING_READ 的值。

    参数 EO_QUEUE_BALANCING_SELECT
    •仅当参数 EO_QUEUE_BALANCING_READ 不等于 0,即处于活动状态时,此参数才有效。消息将继续随机分配到 EO 队列中。这些队列由此参数定义。它将队列的相对填充级别指定为百分比形式。相对这里指相对于最大填充队列。如果某些队列的填充级别低于这里定义的级别,那么仅考虑将这些队列进行分配。如果所有队列的填充级别都比较高,那么将考虑所有队列。相对填充级别的计算取决于受参数 EO_QUEUE_BALANCING_READ 影响的功能所确定的数据。

    缺省值
    •使用以下 ABAP XI 参数激活统计平衡:
    •TUNING EO_QUEUE_BALANCING_READ 20
    •TUNING EO_QUEUE_BALANCING_SELECT 80

    注释:

    该建议在新生成大约 20 条 XI 消息后为 XI 运行时生成新统计。统计平衡的配置必须使用场景优化。这意味着必须为许多 XI 消息增加值 TUNING EO_QUEUE_BALANCING_READ 以提高性能。

  • 相关阅读:
    MIKE水动力笔记20_由dfs2网格文件提取dfs1断面序列文件
    linux文件相关命令
    Dijkstra算法和Floyd算法求最短路径
    Python中的self与类的理解
    Ficow 的 AI 平台快速上手指南(ChatGPT, NewBing, ChatGLM-6B, cursor.so)
    js常用方法之 slice
    CodeTON Round 3 (C.差分维护,D.容斥原理)
    数字秒表设计仿真VHDL跑表,源码,视频
    医学图像分割之--Tversky Loss
    天才程序员周弈帆 | Stable Diffusion 解读(三):原版实现源码解读(篇幅略长,建议收藏!)
  • 原文地址:https://blog.csdn.net/dwjnhkbc123/article/details/127096439