【设计】C-S协议 可扩展性
  VdPUlrWoxIxR 2023年11月02日 104 0


C-S架构下,接口返回值定义需要考虑后续的可扩展性。这里是指广义的客户端-服务端。原则上,对于协议的返回值,后续的变更只能新增字段而不能发生结构性的变更(比如修改结构或删除),否则就无法向前兼容。
如果非要变更,需要做好兼容性处理。分两种case:
1.服务端兼容,需要客户端传入版本号,服务端根据版本号兼容,低版本的使用老协议下发,高版本的使用新协议下发,如果无法区分客户端版本,那么服务端无法兼容,一版推荐走服务端兼容;
2.客户端兼容,这种仅用于web端或者客户端可以统一强升的情况,把所有的客户端都改为新协议;但是客户端仍然需要兼容处理,服务端协议变更可能需要一定时间,比如服务器数目较多,在升级期间仍会有新老协议并存的情况,客户端需要兼容。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
VdPUlrWoxIxR