对比项 |
基于开源Spring Cloud自建 |
|
---|---|---|
管理界面 |
提供一站式微服务管理控制台,包含服务目录、服务治理、服务配置、事务看板及新服务创建等简单易用的Web操作界面 |
需自行开发UI控制台,代码量2万多行 |
开发语言 |
支持JAVA、Go、PHP、.NET、Python、NodeJS及其他多种主流开发语言 |
只支持JAVA |
通信协议 |
REST/RPC |
REST |
Service Mesh |
提供商业版Mesher,支持一键式部署 |
无 |
易用性 |
只需导入华为微服务SDK即可享受各种服务治理和管控能力,包括负载均衡、故障隔离、容错机制、流量控制、调用链跟踪和服务状态仪表盘等,这些功能与业务代码完全解耦,用户只需专注业务开发 |
基于Spring Boot/Cloud组件构建,需要集成验证Hystrix、Ribbon、Zipkin、Prometheus等大量三方组件,门槛高,学习周期长 |
服务注册 |
提供了对微服务静态元数据丰富的管理能力,例如支持应用>微服务>实例的层次关系管理、版本管理、tag管理、灰度发布以及服务拓扑,同时提供了对大规模企业级微服务管理 |
提供Eureka组件,需自行开发封装成服务使用,仅是管理动态路由数据 |
动态配置 |
提供多维数据建模的方式组织配置信息,对于配置信息的描述能力更强,扩展能力更好。另外同时支持了push和pull的配置变更通知方式,实时性更好 |
提供Spring Cloud Config组件,需自行开发封装成服务使用,配置描述能力弱,且实时性不好 |
服务治理 |
支持更细粒度(接口级)的服务治理能力。并且实现了实例访问错误重试和隔离、多数据中心间服务发现的优先级等其他治理能力。另外,对于这些开源库提供的原生治理方式进行了妥善的封装,可以通过配置的方式进行使用而不必再进行编码 |
仅提供Hystrix等开源组件,需自行开发封装成服务使用,只支持服务粒度隔离 |
轻量级网关 |
支持Restful请求汇聚及转发,支持服务映射、请求解析、加密解密、鉴权等自定义能力,网关服务本身也可被治理 |
基于Zuul构建网关,性能是短板,治理能力需要业务集成大量三方件来实现 |
灰度发布 |
支持按权重和接口参数(例如用户群组或用户所属区域等等)定义微服务灰度发布规则 |
无 |
仪表盘 |
提供基于微服务>实例>接口多层次的应用级指标监控,如吞吐量、时延、成功率等等 |
无 |
部署 |
即开即用(秒级) |
需基于开源组件自行开发和部署服务中心、配置中心、治理中心以及控制台,费时费力 |
扩容 |
通过控制台自助式升降规模(秒级) |
需要手工进行实例扩容,数据迁移等等 |
异地容灾 |
支持AZ基本高可靠 |
搭建难度大,技术要求高,需自行开发HA |
日常运维 |
用户免运维,由华为运维团队提供如备份恢复、监控告警、版本升级、防爆机制、访问保护等日常运维措施 |
需自行负责如备份恢复、监控告警、版本升级、防爆机制、访问保护等日常运维措施 |
与华为云服务集成 |
目前已与华为云容器服务CCE、应用性能管理APM、应用运维管理AOM无缝连接,正在集成缓存服务DCS、消息服务DMS、数据库服务RDS等 |
自行搭建或对接华为云服务 |
使用商业版微服务CSE vs 使用开原版微服务Spring Cloud
猜你喜欢
转载自blog.csdn.net/looook/article/details/80594190
今日推荐
周排行