之前微服务框架一直是用dubbo和spring cloud,直到2017年差不多年底的时候发现了新的开源微服务框架 - serviceComb。这个框架是由华为公司开源的,在公司内部叫cse,想了解更多的朋友可以到华为云官网查看。这里我大概说下这个新开源框架的一些优势的地方。

一、系统架构灵活,扩展性强。下面以两图来说明:

 

开源微服务业务系统 开源微服务框架_开源微服务业务系统

模块说明

类型

artifact id

是否可选

功能说明

编程模型

provider-pojo


提供RPC开发模式

编程模型

provider-jaxrs


提供JAX RS开发模式

编程模型

provider-springmvc


提供Spring MVC开发模式

通信模型

transport-rest-vertx


运行于HTTP之上的开发框架,不依赖WEB容器,应用打包为可执行jar

通信模型

transport-rest-servlet


运行于WEB容器的开发框架,应用打包为war包

通信模型

transport-highway


提供高性能的私有通信协议,仅用于java之间互通。

运行模型

handler-loadbalance


负载均衡模块。提供各种路由策略和配置方法。一般客户端使用。

运行模型

handler-bizkeeper


和服务治理相关的功能,比如隔离、熔断、容错。

运行模型

handler-tracing


调用链跟踪模块,对接监控系统,吐出打点数据。


二、开发效率高,方式多样化。ServiceComb兼容dubbo、spring cloud等业务流行的微服务框架,而且模块清晰,只需要专注于业务层的开发就好。

三、官网的文档比较完善,上面有很多实例可以参考学习。

四、功能大而全,包括一站式的服务注册、服务治理、动态配置功能,具备服务化契约增强、多语言SDK支持、多通信协议支持等优势特性。特别是运维监控方面有着不错的实现。

五、使用Saga——分布式事务最终一致性解决方案。虽然这块还没有深入的使用,但是从实现的原理来看,简化了配置和性能上面有了一定的优化。

当然,目前serviceComb开源时间还不长,需要时间来不断完善,但目前来看,比dubbo和spring cloud都要好不少。