,并且以正确的方式递增版本号,版本号由三部分组成,必须按如下方式递增版本号:
MAJOR:当你对API进行不兼容的更改时
MINOR:当你对API进行向后兼容的增强时
PATCH:当你进行向后兼容的错误修复时...,客户端应忽略任何额外的响应属性,这样老版本的客户端能直接只用更新的服务
进行主要且不向后兼容的改变
此时必须在一段时间内同时支持新旧版本的API
假如使用REST,可以在URL中嵌入主要版本号,或者使用...实现API的服务适配器将包含在旧版本与新版本之间进行转换的逻辑,如API Gateway几乎会使用版本化的API
消息的格式
考虑到以后会扩展到其他语言,我们不应该使用类似java序列化这样跟语言强相关的消息格式...它是一种跨语言客户端和服务端的框架,基于二进制消息,你可以基于Protocol Buffer的IDL定义gRPC API,能够保持在向后兼容的同时进行变更。...额外的操作复杂性
处理并发和消息顺序
如何在保留消息顺序的同时,横向扩展多个接收方的实例
采用分片通道方案,如将orderId作为分片键,特定订单的每个事件都发布到同一个分片,该消息也由同一个接收方实例读取