服务通信框架 | 中间件的现状和选型

Eureka

nacos

  • https://github.com/alibaba/nacos/wiki
    1
    2
    3
    Eureka 2.0(已停止)。
    关于eureka 2.0的现有开源工作已经停止。作为2.x分支现有工作库的一部分而发布的代码库和artifacts,使用起来风险自负。
    Eureka 1.x是Netflix的服务发现系统的核心部分,仍然是一个活跃的项目。

    consul

  • Prometheus采集metric对于consul的支持

对比

  • CAP模型 | 客户端更新服务信息 | 伸缩性 | 健康检查模式 | 负载均衡 | 手动上下线服务方式 | 跨中心同步 | K8s集成 | 分组 | 权重

conclusion

比较维度

  • 功能 | 部署 | 长远支持和发展趋势 | 伸缩性和扩展性 | 支撑项目和环境 | 性能

    all

  • 技术框架的统一和建设
  • 中间件选型和稳定性由框架保障和解决,对上层业务开发透明

Others

Netflix家的

  • Hystrix是一个延迟和容错库,旨在隔离对远程系统、服务和第三方库的访问点,阻止级联故障,并在故障不可避免的复杂分布式系统中实现复原力。
  • Ribbon是一个进程间通信(远程过程调用)库,内置软件负载均衡器。主要的使用模式涉及REST调用和各种序列化方案的支持。