多服务器环境中的共享缓冲区资源不可用问题

2020-08-19 08:54发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我们有一个程序来处理...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,

我们有一个程序来处理数据(数据大小约100,000条记录(或更多)),并在并行过程中为每个记录进行FI过账,我们需要允许这些过账直到上限 金额达到后,一旦所有过帐的累计金额达到上限金额,则应停止所有后续过帐。

这里的挑战是,我们拥有多服务器生产环境,程序会根据服务器上资源的可用性在应用服务器上分布这些并行过程,由于这些多服务器使跟踪累计数量变得越来越困难 而不会增加性能。

最初,我们想到了跟踪数据库表中的累积量,但是这里的问题是,当某个进程试图更新数据库表时,所有其余进程都必须等待DB表才能更新。 可用于读/写,这将导致很多性能问题,因此我们不希望采用这种方式。

导出到数据库类似的问题-在执行COMMIT之前,其他进程将无法使用数据,这将再次导致性能问题。

我们想尝试共享缓冲区,因为它更快,但是共享缓冲区特定于Application Server,因此我们将累积逻辑放入RFC中,并且始终将RFC定向到 我们在TVARV中维护的特定的指定应用服务器。

以下是我们目前使用此方法所面临的问题

1.当我们与BASIS团队一起审查此解决方案时,出于以下原因,他们不能依靠一台服务器

a)他们对一台特定的指定服务器不满意,因为该服务器可能由于各种原因有时会关闭,

他们的建议是,确定哪个服务器具有可用资源并利用该服务器。 这将对我们不起作用,因为我们最终将在不同服务器上累计金额,这将给我们带来不正确的结果。

2。 由于所有并行进程都试图访问共享缓冲区的特定服务器,因此在PE测试期间,我们发现服务器中的某些资源不可用异常。

这是我们目前面临的两个主要挑战,请提供您对如何解决/克服这些问题的看法/建议。

4条回答
My梦
2020-08-19 09:09

是的,您说的很正确1000 s。 我给出了错误的论点; 我想说的是,对于一个持续约1秒,10毫秒的发布来说,并不重要。

1)执行FI发布,更新Z表,然后提交工作。

p>

2)即使Z表中还有其他键列,更新的持续时间与FI过帐的持续时间相比仍然不重要。

3)为什么不? 少于FI发布更新的表数。

一周热门 更多>