ServiceComb是华为云于2017年6月开源的微服务框架,并于2017年12月正式进入Apache软件基金会孵化。 其包括一站式的服务注册、服务治理、动态配置功能,具备服务化契约增强、多语言SDK支持、多通信协议支持等优势特性, 并提供SAGA数据最终一致性方案解决微服务架构数据一致性难题。ServiceComb 兼容Spring Cloud等业界流行微服务框架, 互通业界生态。ServiceComb的项目发起人和负责人姜宁为华为开源能力中心技术专家及华为PaaS领域开源专家,拥有多年参 与Apache中间件项目的经验并指导多个Apache孵化项目,熟悉开源社区开发流程,对微服务及SOA均有较深入研究。 ServiceComb源自华为云企业级微服务引擎CSE,并应用在华为云微服务云应用管理平台ServiceStage之上。ServiceComb 作为华为微服务引擎CSE核心,已在华为流程IT、各产品线云化、消费者云等众多重大项目上成功稳定商用,并帮助包括软通动力、 中软国际、绿城盟拓、南京奇蛙智能科技有限公司等企业完成应用微服务改造,加速其业务上云并帮助实现高效的运维管理。 目前ServiceComb主要包含的是Java底座(Chassis),整个语言开发包包含服务契约、编程模型、运行模型与通信模型四个部分。
服务契约: ServiceComb通过服务契约支持Java、Go语言底座开发的服务可以相互访问。服务契约是建立在OpenAPI基础之上的, OpenAPI规范是Linux基金会的一个项目,通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发。Open API 提供了一套比较完整的开发工具链,在服务契约的基础上我们可以自动生成服务文档,服务调用开发包以及服务调用测试代码。 编程模型: Java语言底座支持多种RESTful服务的编程方式,即支持应用广泛的Spring MVC与JAXRS编程模型,也支持POJO + 服务契约的开发方式来描述RESTful服务。由于在Java Chassis先将这些编程模型转换成为服务契约Swagger对象,然后交由内部 运行模型以及通信模型进行处理, 所以Java Chassis并不依赖Spring MVC以及JAXRS的底层实现。目前Go Chassis和Java Chassis支持RESTful级别的互联互通。 运行模型:大家在开发应用的过程中,会有很多服务扩展的需求,例如根据用户身份认证信息, 对服务调用进行认证。Chassis架构支持在运行时通过配置处理链(handler)的方式来进行服务扩展。ServiceComb缺省提供服务发现、 容错熔断以及调用链追踪等处理链。用户可以通过配置文件的方式,在应用启动的时候加载对应的处理链。 通信模型:语言底座通过通信模型对外进行交互,其中包含了消息序列化和反序列化的模块以及底层传输的模块。值得一提的 Java Chassis 的通信模型是建立在Vertx基础之上了,内部已经完全异步化了,微服务在全异步工作模式下有很高的性能。
相关推荐
微服务框架ServiceComb介绍和演示 编程模型+运行模型+通信模型 构建微服务实战
我们今天围绕三个主题来讲,首先会讲一下ServiceMesh在华为多年的实践,另外会介绍一些实践的方法,最后会介绍几个案例来带大家看一下,我们是怎么在实践中帮助企业在生产环境中使用ServiceMesh。实际上我们在做...
本文将向大家介绍为什么数据一致性如此重要?Saga又是什么?想象一下如果我们经营着一家大型企业,下属有航空公司、租车公司、和连锁酒店。我们为客户提供一站式的旅游行程规划服务,这样客户只需要提供出行目的地,...
介绍dtm演示,包括dtm起源,dtm-servicecomb,dtm-springcloud-hwdtm来源dtm来源演示,包括无创交易和TCC交易dtm-servicecomb 基于ServiceComb的dtm演示,包括无创交易dtm-springcloud-hw 基于springcloud-huawei的...
1.2.3.1 ServiceComb 1.2.3.2 SpringCloud 1.2.3.3 SpringCloud Alibaba 1.3 SpringCloud Alibaba介绍 1.3.1 主要功能 1.3.2 组件 第二章 微服务环境搭建 2.1 案例准备 2.1.1 技术选型 2.1.2 模块设计 2.1.3 微服务...
本篇文章主要介绍了Docker下搭建一个JAVA Tomcat运行环境的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了spring设置拦截器代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
特性介绍 发布,管理App 编译运行 atp-be对外提供RESTful接口,基于开源的ServiceComb微服务框架进行开发,并集成了Spring Boot框架。本地运行需要依赖ServiceCenter进行服务注册发现,通过postman进行接口测试。 ...