SAP PI – 通信

SAP PI – 通信


在 SAP PI 中,您可以定义两种类型的通信 –同步异步

同步通讯

请求和响应操作调用同步通信,操作后立即返回进程输出。一般而言,您可以说同步场景是发送方进程向接收方发送请求并等待响应。如果接收方发生错误,则发送方应用程序负责重新发送消息。

在这种方法中,发送者可能会在超时后重新发送消息,并且可能存在重复的消息。PI 中的这种方法称为BE(Best Effort)

考虑两个系统 – AB并且,您在两个系统之间引入了一个中间系统 I。系统 A 和系统 I 之间的通信是同步的,而系统 A 和系统 B 之间的通信是异步的。

同步通讯

在这种通信场景中可能会发生以下类型的错误 –

  • 应用程序错误– 处理消息时接收端出现错误,发送方不知道此错误并一直等待回复。

  • 网络级错误– 在此错误中,发送方和接收方之间的通信网络存在错误。发件人不知道这一点,消息卡在中间,发件人等待操作超时。

错误

  • 响应消息中的错误– 在这种情况下,发生错误并且响应消息卡在两者之间并且发件人继续等待。

好处

以下是使用同步通信的主要优势 –

  • 无需配置响应消息路由。

  • 无需将响应与请求相关联。

  • 在此通信中,立即收到响应。

推荐场景

这适用于涉及读取操作的操作,例如查看采购订单。

缺点

以下是使用异步通信的主要缺点 –

  • 如果失败,发送方需要再次发送消息。

  • 接收系统应当配置为检查重复的消息。

  • 在这种情况下,发送方应用程序被阻止,直到收到响应或发生超时错误。

  • 您不能配置多个接收器。

异步通信

在异步通信中,您可以在两个系统之间添加一个中间系统或中间件。当发送方应用程序发送请求时,它不会等待接收方应用程序发送响应。如果由于某种原因出现故障,中间件负责重新发送消息。如果需要,接收系统可以将响应作为单独的异步调用发送回 Sender。

SAP PI 中的这种方法称为Exactly Once (EO)Exactly Once in Order (EOIO)

异步通信

中间系统是一个队列,来自 A 的消息首先添加到队列中,在接收端,它从队列中拉出并发送给接收者。来自系统 B 的响应消息遵循

SAP PI 中的方法

您还可以根据业务需求使用先进先出 (FIFO) 在某些情况下维护订单。这种情况被称为异步顺序维护或完全按顺序 (EOIO)。

异步通信确保有保证的交付。如果接收器系统在一段时间内不可用,则中间队列会保留消息并保持在那里,直到接收器系统可用并将消息从队列中拉出并发送到接收器系统。

推荐场景

建议用于修改操作,例如创建采购订单或修改采购订单

好处

以下是异步通信的主要优势 –

  • 如果出现故障,SAP PI 系统将确保有保证的交付并将重新发送消息。

  • 重复检查不需要配置。

  • 您可以在这种情况下配置多个接收器。

  • 发送方系统和接收方系统不需要同时在线。

  • PI 记录所有通过异步通信发送的消息。

  • 没有超时,因为中间系统会保留消息和响应请求。

缺点

以下是异步通信的主要缺点 –

  • 在这种情况下,发送方需要自行将响应与请求相关联。

  • 响应消息需要单独实现和路由。

  • 它不提供立即响应。

SAP PI — 技术

SAP 提供了一个基于 NetWeaver 的中间件,称为 SAP NetWeaver Process Integration。SAP NetWeaver PI 以称为简单对象访问协议 (SOAP-HTTP) 的特定格式传送消息此消息包含标头和有效负载。标头包含一般信息,例如发送方和接收方信息,有效载荷包含实际数据。

系统可以直接或使用适配器与 SAP NetWeaver PI 通信 –

  • 使用应用程序适配器进行通信
  • 使用技术适配器进行通信
  • 使用行业标准适配器进行通信
  • 使用事务适配器进行通信
  • 使用代理直接通信

觉得文章有用?

点个广告表达一下你的爱意吧 !😁