内容来自《Java Web 程序员面试笔试宝典》
【出现频率】★★★☆☆ 【学习难度】★★★☆☆
答案:RPC 最大的缺点是服务提供方和调用方之间存在强依赖,需要为每一个服务进行接口的定义,需要严格的版本控制才能防止因为版本不一致而在服务提供方和调用方之间产生冲突。RPC 的优点是可以使请求报文体积更小,一般以二进制传输,性能比较高。
而 Rest 是轻量级的解耦合的接口,服务的提供方和调用方不存在不存在代码之间的依赖问题,双方可以通过约定好的规则进行独立开发,但是要避免出现文档和接口不一致而导致的服务集成问题。Rest 相对也更容易上手。
Rest 接口一般是用 JSON 格式的文本传递报文,体积相对较大,性能相对较低。