Nacos 2.0 性能提升十倍,贡献者 80% 以上来自阿里之外
Nacos 之于微服务 = Etcd 之于 K8s
2.0 架构升级
长连接协议选型:我们内部有一个私有长链接协议,市场上有 gRPC/Rsocket 两个主流选择,我们为了兼容必须做好扩展抽象,为了多语言容易实现和集成我们也做了很多压测验证。最终选择了 gRPC。从模型上看 Rsocket 的推模型对于 Nacos 更合适,在生态和多语言支持上 gRPC 更合适,综合平衡我们选择了 gRPC,并且做好扩展,以便后续有更好的选择。
服务一致性模型:Nacos 底层服务分为持久化服务和非持久化服务,在一致性模式和存储方式上有比较大差别,经过漫长时间打磨,我们把模型做好了抽象和融合,把每个场景性能都发挥到极致。
无缝升级方案:一般开源产品协议的跨代升级基本都是不考虑兼容的,但是由于 Nacos 有广泛用户基础,因此我们还是消耗了巨大的精力做好兼容工作,以便让所有用户能够升级享受到这些红利。