ServiceComb java-chassis和CSE java-chassis的区别


针对开发者的常见疑问,本文从功能集合、版本管理和使用限制等方面介绍开源SDK和商业SDK的区别。为了简单,下面用ServiceComb指代ServiceComb java-chassis,用CSE指代CSE java-chassis,但实际上,ServiceComb和CSE的分别作为开源解决方案和商业解决方案,他们包含了重叠的功能,也包含独特的功能。[ServiceComb微服务开发框架介绍](https://bbs.huaweicloud.com/blogs/ad88f16dd98511e8bd5a7ca23e93a891) 介绍了ServiceComb,CSE的介绍可以参考[官网](https://support.huaweicloud.com/cse/index.html)。

功能集合

可以简单将ServiceComb理解为CSE的子集,CSE包含了一些用于华为云认证、管理相关的模块。从开发者的角度看,他们的使用方式完全一样;从运维者的角度来看,使用CSE开发的微服务能够更加方便的接入华为云和使用云上功能。

以ServiceComb开发的微服务修改为CSE为例,可以看出差异。ServiceComb应用的依赖关系中dependency management为:

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.apache.servicecomb</groupId>
        <artifactId>java-chassis-dependencies</artifactId>
        <version>1.1.0</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

CSE为:

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.huawei.paas.cse</groupId>
        <artifactId>cse-dependency</artifactId>
        <version>2.3.62</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

在实际依赖的jar包中,可以添加CSE的认证等类型的jar包,就启用了云上功能。

… ServiceComb相关的包为org.apache.servicecomb
        <dependency>
            <groupId>org.apache.servicecomb</groupId>
            <artifactId>transport-highway</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.servicecomb</groupId>
            <artifactId>transport-rest-vertx</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.servicecomb</groupId>
            <artifactId>transport-rest-servlet</artifactId>
        </dependency>
 … CSE相关的包为com.huawei.paas.cse。目前主要就是下面两个包。        <dependency>
            <groupId>com.huawei.paas.cse</groupId>
            <artifactId>cse-handler-cloud-extension</artifactId>
        </dependency>
       <dependency>
            <groupId>com.huawei.paas.cse</groupId>
            <artifactId>foundation-auth</artifactId>
        </dependency>

ServiceComb和CSE的最新版本都提供了简化的聚合依赖,使用和替换起来更加方便。ServiceComb的聚合依赖为:

  <dependencies>
    <dependency>
      <groupId>org.apache.servicecomb</groupId>
      <artifactId>solution-basic</artifactId>
    </dependency>
  </dependencies>

CSE的聚合依赖为:

  <dependencies>
    <dependency>
      <groupId>com.huawei.paas.cse</groupId>
      <artifactId>cse-solution-service-engine</artifactId>
    </dependency>
  </dependencies>

版本管理

ServiceComb和CSE采用One Branch的机制进行版本交付,保证代码同源,使得开发者能够更好的使用开源版本或者商业版本。

图:[ServiceComb微服务开发框架介绍](https://bbs.huaweicloud.com/blogs/ad88f16dd98511e8bd5a7ca23e93a891)

所有代码的修改,优先在ServiceComb修改,然后CSE整合ServiceComb的版本,并对版本进行测试验证,发布CSE的版本。CSE发布的ServiceComb版本基于某一个具体的commit,内部版本命名继承ServiceComb的版本,比如1.0.0.B001,一直往上。

使用限制

目前ServiceComb和CSE版本的使用,都是免费的。对于需要持续集成,快速迭代的用户,建议使用CSE的版本,这样能够更快的获取到最新的版本。ServiceComb的发布版本可以从maven中央库进行获取,CSE的发布版本在华为云提供的maven仓库。华为云的maven仓库也代理了中央仓库,所以开发者可以使用[华为云的maven仓库配置](https://huaweicse.github.io/cse-java-chassis-doc/) 同时使用ServiceComb和CSE。CSE的版本说明(Release Notes)也可以从这里获得。

往期精彩回顾

Netty 消息接收类故障案例分析

基于CSE的微服务工程实践-多微服务框架演进

Netty 和 RPC 框架线程模型分析

扫码加群

更多精彩

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Apache ServiceComb Java Chassis 是一个开箱即用Java语言微服务SDK,含服务契约、编程模型、运行模型与通信模型四个部分,具备负载均衡、容错熔断、限流降级、调用链追踪等全面微服务治理能力,服务治理能力与业务逻辑隔离。 它包含如下特性: 多种开发风格,REST(JAX-RS、Spring MVC)和RPC; 多种通信协议, HTTP over Vert.x、Http Over Servlet、Highway等; 统一一致的服务提供者、服务消费者处理链,以及基于契约的开箱即用的服务治理能力。 软件特点: 高性能 Java Chassis 网络层基于 Vert.x 实现, 支持开发者使用响应式编程, 开发者在使用熟悉的REST风格设计业务接口的时候,也能够获取到非常高性能的吞吐量。同时还提供了Highway协议,满足更高性能场景的要求。 原生支持OpenAPI Java Chassis 的接口开发、服务治理都基于 Swagger ,并通过接口语义检查,使得接口定义符合 OpenAPI 规范。 灵活的开发方式 开发者可以使用 SpringMVC/JAX-RS/transparent RPC 任意一种方式定义服务端接口, 并使用RPC/RestTemplate 等方式访问这些接口. 得益于Java Chassis的通信层与开发方式分离的设计,开发者可以在 Rest over Vertx/Rest over Servlet/Highway等通信模式下自由切换。 开箱即用的服务治理能力 Java Chassis 提供了大量开箱即用的服务治理能力,包括服务发现、熔断容错、负载均衡、流量控制等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值