Mon*_*ack 9 api rest design-patterns
使用REST API调用另一个REST API是正确的编程实践/软件设计吗?如果不是,那么处理这种情况的推荐方法是什么?
如果我正确理解你的问题,那么是的,这是非常常见的.
您在描述以下内容,我推测:
客户端对Server-1进行API调用,Server-1在为此请求提供服务的过程中,向API Server-2发出另一个请求,从Server-2获取响应,进行一些重新格式化或数据提取,然后打包以响应客户端?
这种事情一直都在发生.它的缺点是,除非Server-1和Server-2之间的连接延迟非常低(例如它们在同一网络上),并且使用的带宽很小,否则客户端将不得不等待很长时间响应.显然,两个后端服务器之间可以有缓存来帮助缓解这种情况.
它几乎与Server-1对数据库进行SQL查询以响应请求相同.
对您的问题的另一种解释可能是客户端要求Server-1对Server-2将接收并异步执行的操作进行排队.这也很常见(例如谷歌抓取你的网站的方式).此方案将使Server-1立即响应客户端,而无需等待Server-2执行的操作的结果.在这种情况下,消息队列或数据库表通常用作服务器之间的中介.
| 归档时间: |
|
| 查看次数: |
6486 次 |
| 最近记录: |