在SAP PI中,您可以定义两种类型的通信 - 同步和异步.
请求和响应操作调用同步通信,并在操作后立即返回进程输出.一般而言,您可以说同步方案是发送方进程向接收方发送请求并等待响应的时间.如果接收方发生错误,发送方应用程序负责再次发送消息.
在这种方法中,发送方可能会在超时后重新发送消息.可能存在重复的消息. PI中的这种方法称为 BE(尽力而为).
考虑两个系统 - A 和 B .并且,您在两个系统之间引入了一个中间系统I.系统A和系统I之间的通信是同步的,系统A和系统B是异步的.
此通信方案中可能出现以下类型的错误 :
应用程序错误 : 处理邮件时接收方端出错,发件人不知道此错误并一直等待回复.
网络等级错误 : 在此错误中,发送方和接收方之间的通信网络出错.发件人不知道这一点,并且邮件卡在两者之间,发件人等到操作超时.
响应消息中的错误 : ;在这种情况下,发生错误,响应消息卡在中间,发送者继续等待.
以下是使用同步通信的主要优点 :
无需配置响应消息路由.
无需将响应与请求相关联.
在此通信中,立即收到回复.
这适用于涉及读取操作的操作,例如,查看采购订单.
以下是使用异步通信和减号的主要缺点;
如果发生故障,发件人需要再次发送邮件.
接收系统应配置为检查重复的消息.
在这种情况下,发件人应用程序将被阻止,直到收到响应或发生超时错误.
您无法配置多个接收器.
在异步通信中,您可以在两个系统之间添加中间系统或中间件.当发件人应用程序发送请求时,它不会等待Receiver Application发送响应.如果由于某种原因导致失败,则中间件负责重新发送消息.如果需要,接收系统可以将响应作为单独的异步调用发送回发件人.
SAP PI中的这种方法称为完全一次(EO)或完全有序(EOIO).
中间系统是一个队列,来自A的消息首先被添加到队列中,在接收端,它被从队列中拉出并发送到接收器.来自系统B的响应消息遵循
您还可以使用先进先出(FIFO)按照业务需求在某些情况下维护订单.此方案称为异步,维护订单或完全一次订购(EOIO).
异步通信确保有保证的交付.如果接收器系统暂时不可用,则中间队列保留消息并保持该消息直到接收器系统可用并且消息从队列中拉出并发送到接收器系统.
建议用于修改操作,如创建采购订单或修改采购订单
以下是异步通信的主要优点 :
如果出现故障,SAP PI系统确保保证交付并重新发送消息.
重复检查无需配置.
您可以在此方案中配置多个接收器.
发送方系统和接收方系统无需同时在线.
PI记录通过异步通信发送的所有消息.
没有超时作为中间系统em保留消息和响应请求.
以下是主要缺点异步通信 :
在这种情况下,发件人需要自己将响应与请求相关联.
需要单独实施和路由响应消息.
它不提供即时响应.
SAP提供基于NetWeaver的中间件,称为SAP NetWeaver流程整合. SAP NetWeaver PI以特定格式发送称为简单对象访问协议(SOAP-HTTP)的消息.此消息包含标头和有效内容.标题包含一般信息,如发送方和接收方信息,有效负载包含实际数据.
系统可以直接与SAP NetWeaver PI通信,也可以使用适配器 :
使用应用程序适配器进行通信
使用技术适配器进行通信
使用行业标准适配器进行通信
使用事务适配器进行通信
使用代理进行直接通信