zoukankan      html  css  js  c++  java
  • ServiceComb java-chassis和CSE java-chassis的区别

    【摘要】 本文从功能集合、版本管理和使用限制等方面介绍开源SDK和商业SDK的区别。

    针对开发者的常见疑问,本文从功能集合、版本管理和使用限制等方面介绍开源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的机制进行版本交付,保证代码同源,使得开发者能够更好的使用开源版本或者商业版本。

    image.png

    图:[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)也可以从这里获得。

    来源:华为云社区原创  作者:liubao68

  • 相关阅读:
    第10节--单行函数之数学函数
    第九节--单行函数之日期函数
    【译】什么是游戏开发实体系统框架(终)
    【译】什么是游戏开发实体系统框架(一)
    【译】游戏《实体系统框架》译文——序
    IDEA 快捷键
    Java学习笔记1
    Java面试题
    Java学习笔记——集合
    Java学习笔记——String类常用方法
  • 原文地址:https://www.cnblogs.com/2020-zhy-jzoj/p/13165967.html
Copyright © 2011-2022 走看看