对于同步还是异步服务接口选择,还是需要根据实际的业务场景需求出发进行选择,从解耦的角度尽量选择异步接口,但是考虑到方便性有些仍然要选择同步服务接口为主,具体为:
1. 对于查询类接口,建议全部采用Web Service同步服务接口设计。
2. 对于导入类接口,如果目标系统本身处理是异步的,尽量采用异步消息接口模式。
3. 对于导入类接口,如果目标系统能够实时处理并返回结果,采用同步服务接口设计。
4. 对于数据1对多分发类接口,尽量采用异步消息接口模式进行设计。
5. 对于消息和通知类推送(即完全不需要目标系统返回结果)的业务场景,全部采用异步消息模式进行。
6. 对于基础设施和网络条件复杂,需要高容错设计场景,尽量采用异步消息接口。
7. 对于大并发,或者需要平衡前后端消息发送和处理速度,需要消息缓冲场景采用异步消息接口。