From b8c2aac996380bf141643a8b9f9d49e7a815e1b3 Mon Sep 17 00:00:00 2001 From: linzhinan Date: Wed, 25 Apr 2018 16:59:38 +0800 Subject: [PATCH] Add blog to descripe the open design of ServiceComb Signed-off-by: linzhinan --- _posts/cn/2018-04-25-open-design.md | 315 ++++++++++++++++++ ...ign-integrate-with-running-environment.png | Bin 0 -> 45070 bytes assets/images/open-design-running-arch.png | Bin 0 -> 66533 bytes .../images/open-design-third-party-plugin.png | Bin 0 -> 45406 bytes 4 files changed, 315 insertions(+) create mode 100644 _posts/cn/2018-04-25-open-design.md create mode 100644 assets/images/open-design-integrate-with-running-environment.png create mode 100644 assets/images/open-design-running-arch.png create mode 100644 assets/images/open-design-third-party-plugin.png diff --git a/_posts/cn/2018-04-25-open-design.md b/_posts/cn/2018-04-25-open-design.md new file mode 100644 index 0000000..fc85179 --- /dev/null +++ b/_posts/cn/2018-04-25-open-design.md @@ -0,0 +1,315 @@ +--- +title: "如何设计一个优质的微服务框架:Apache ServiceComb 的开放性设计" +lang: cn +ref: open-design +permalink: /cn/docs/open-design/ +excerpt: "本文讲述了整个 开源微服务框架 Apache ServiceComb 设计形成的前因后果,尝试从理念、思想和实践结合的维度剖析一个优质的微服务框架应该具备哪些要素,包括但不限于 对开发者友好、高性能、内外部扩展性>等。" +author: Zen Lin +tags: [设计, 开放,扩展] +redirect_from: + - /theme-setup/ +--- + +【摘要】 一个优质的微服务框架需要考虑的要素众多,在满足微服务设计理念的前提下,也是一个不断实践优化的过程。 +本文讲述了整个 开源微服务框架 Apache ServiceComb 设计形成的前因后果,尝试从理念、思想和实践结合的维度剖析一个优质的微服务框架应该具备哪些要素,包括但不限于 对开发者友好、高性能、内外部扩展性等。 +阅读本文有利于加深对微服务理念和框架的理解,给予微服务用户或开发者以帮助,这也是 Apache ServiceComb 的前身华为云微服务引擎的智慧结晶,从细节处承载了华为云自身多年云化转型的经验。 + + + +## 写在前面 + +[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 的前身为华为云的 [微服务引擎 CSE (Cloud Service Engine) 云服务](https://support.huaweicloud.com/usermanual-servicestage/zh-cn_topic_0053812706.html), ServiceComb 的早期版本和多数第一批做微服务或分布式框架先贤一样,为了追求高性能,做过非常多如 改善编码效率 和改进通信协议等尝试。然而,随着业务规模的递增,需求也逐渐呈现多样化,单方面通过传统手段追求高性能导致在面对多样化需求时遇到了各种挑战,遗留系统的通信、接入各种不同的终端、协议健壮性、防攻击等各种挑战迎面而来。 + +Apache ServiceComb,愿景是帮助企业快速构建云原生应用,通过一系列解决方案帮助用户快速开发微服务应用的同时实现对这些微服务应用的高效运维管理,保持中立性以避免厂商LockIn成为了关键任务。对于此, Apache ServiceComb 需要有友好的机制能够对接各微服务主流技术栈技术 或 开发框架。 + +在系列挑战的驱动下, Aapche ServiceComb 设计团队逐步形成了 “全面开放,使用标准协议,架构易于拆分和扩展,对开发人员友好,可以与业界其他主流框架互通集成” 的共识, 本文将着重分享这些共识是如何体现在Apache ServiceComb 的设计中的。 + +## 开放和标准 + +开放和标准应用到设计的不同的层面。一方面是连接组织和开发人员,一方面是连接异构系统。组织和开发人员的复杂性来源于技能的多样性,大家使用不同的开发语言,同一种开发语言存在多样的开发习惯;系统的多样性来源于系统之间的通信协议,为了实现与异构系统的通信,必须具备良好的适配不同通信协议的能力。 + +### 连接组织和开发人员 + +#### 编程风格 + +每位技术人员都或多或少拥有自己的 Coding 习惯或爱好的技术, 使用个人熟练的方式从事技术工作往往更加高效和舒适。 + +[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 的早期版本实现了 gRPC 协议,然而在项目演进过程中我们发现大量技术人员并不熟悉书写 IDL , 对 IDL 具体支持哪些特性也不清楚。 大多数情况下,用户每碰到一个场景就需要翻开协议规范看一遍, 而 IDL 缺少配套的编辑或语法检查等工具也导致了开发效率的降低。 + +于是 Apache ServiceComb 设计团队开始思考是否有方法能够在确保保持用户开发习惯的前提下支持 gRPC 。 + +设计团队结合自己的 Java 编程史,分析当下主流框架,并听取社区用户的反馈找到了一些共性: + +- 使用 RPC 方式描述对外接口。gRPC 、Corba 、WebService 等技术人员谙于此道。 +- 使用 JAX-RS 或 Spring MVC 风格开发 REST 接口。REST 风格开发随着微服务架构兴起,JAX-RS 和 Spring MVC 已然成为 Java REST 的开发事实标准, Spring 的拥抱者都比较熟悉。 + +Apache ServiceComb 很快在社区设计层面达成了一致,通过缺省支持以上共性来拥抱90%的开发者, 让大多数的 Java 开发者们能够快速开始工作。 + +除以上共识外,Apache ServiceComb 还额外做了进一步的优化,以保证不同编程风格的兼容性,使用户或开发者倍感灵活及舒适。 + +在下面的例子中,展示了 Provider和Consumer 代码的各种实现,在同一个微服务中,这些编程方式可以同时出现;同一段 Consumer 代码中可以访问各种不同的编程风格的 Provider 实现。 + +**RPC 方式的 Provider** + +```java +@RpcSchema(schemaId="hello") +publicclassHelloImplimplementsHello{ +@Override +publicStringsayHi(Stringname){ + return"Hello"+name; +} + +@Override +publicStringsayHello(Personperson){ + return"Helloperson"+person.getName(); + } +} +``` + +**JAX-RS 方式的 Provider** + +*代码片段来自于 [Apache ServiceComb JAX-RS sample](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/samples/jaxrs-sample)* + +```java +@RestSchema(schemaId="jaxrsHello") +@Path("/jaxrshello") +@Produces(MediaType.APPLICATION_JSON) +publicclassJaxrsHelloImplimplementsHello{ + +@Path("/sayhi") +@POST +@Override +publicStringsayHi(Stringname){ + return"Hello"+name; +} + +@Path("/sayhello") +@POST +@Override +publicStringsayHello(Personperson){ + return"Helloperson"+person.getName(); + } +} +``` + +**Spring MVC 方式的 Provider** + +*代码片段来自于 [Apache ServiceComb Spring MVC sample](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/samples/springmvc-sample)* + +```java +@RestSchema(schemaId="springmvcHello") +@RequestMapping(path="/springmvchello",produces=MediaType.APPLICATION_JSON) +publicclassSpringmvcHelloImplimplementsHello{ + +@Override +@RequestMapping(path="/sayhi",method=RequestMethod.POST) +publicStringsayHi(@RequestParam(name="name")Stringname){ + return"Hello"+name; +} + +@Override +@RequestMapping(path="/sayhello",method=RequestMethod.POST) + publicStringsayHello(@RequestBodyPersonperson){ + return"Helloperson"+person.getName(); + } +} +``` + +**RPC 方式访问上述三种服务的 Consumer** + +```java +@RpcReference(microserviceName="hello",schemaId="hello") +privateHellohello; +System.out.println(hello.sayHi("JavaChassis")); +``` + +*以上代码片段全部出自 [Apache ServiceComb Samples](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/samples/),有兴趣者可阅读了解或贡献更多的智慧。* + +直至此处,或许开发者会产生疑问,既然 Consumer 可以通过一致的 API 方式访问不同的Provider,为何还需要额外的 JAX-RS 和 Spring MVC 标签? + +原因是,这里的设计依据是 [Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/)的 Consumer考虑的不仅限于 类SDK 的 Consumer,还有浏览器等非 SDK 类的 Consumer,浏览器的 Conumer 识别的是 Http 形式的消息。 通过定义和使用这些标签, 我们可以更加精细的指定浏览器如何访问后台接口。 类似于 Web Service 的 WSDL 描述语言, Apache ServiceComb 称之为[服务契约](http://servicecomb.incubator.apache.org/cn/users/service-contract/)。 + +服务的契约会在服务运行时通过代码定义自动生成,并注册到[服务中心](https://github.com/apache/incubator-servicecomb-service-center)。契约也可在运行时用于独立的服务治理逻辑开发,生成 Consumer 代码。此外,也可作为 API 文档对外发布,供非 SDK 的 Consumer 参考。 + +#### **[服务契约](http://servicecomb.incubator.apache.org/cn/users/service-contract/)** + +微服务强调服务自治,对外体现的功能全部以松耦合的接口方式提供,并且只能以通信的方式实现相互访问。此原则给团队协作带来了根本性的变革。 + +微服务的一个开发团队通常由5~6个人的全功能团队组成,端到端的完成 场景需求分析、架构功能设计、开发和运维,团队组织结构和业务系统的架构相匹配。团队建立后的核心问题就是团队之间如何进行高效的协作沟通,以决定不同微服务之间的协作通信。 + +[Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 通过确保让开发人员保持自己的固有编程习惯及设计上的松耦合灵活性,让微服务团队之间可以进行高效协作,以避免在不同的微服务团队讨论编程风格受限于历史旧账而浪费宝贵的精力和时间。 + +在 RPC 的世界里,有 Corda IDL,WSDL,ProtoBuffer 等可以参考的优秀实践, REST 风格的接口让团队之间可以通过 HTTP 语义进行沟通,但却不能像 IDL 一样描述跨语言的数据格式。Open API 的出现很好地解决了这个问题。 + +Open API 首先是一个不断发展壮大中的开放的标准。Open API 能兼顾 RPC 、REST 等不同的开发方式,并且吸收了大量的跨语言经验,能够在不同的语言之间进行解析。 + + 对于 Java 开发者,下面的代码片段是日常所打交道的: + +```json +User: +type:object +properties: +age: +type:integer +``` + +如果开发人员有丰富的跨语言开发经验,可以看出 Swagger 在解决跨语言编程方面API定义冲突的努力, 如 Swagger 通过 format 来定义数据类型的存储格式,以解决不同的语言在数据类型表示上的差异: + +```json +User: +type:object +properties: +age: +type:integer +format:int32 +``` + +[开源微服务框架 Apache SerivceComb](http://servicecomb.incubator.apache.org/cn/) 既遵循常规开发规范也特别关注开发效率。开发者可以先写接口定义后写代码, 也可直接通过自己熟悉的方式编写写代码, 两种方式都会生成 [服务契约](http://servicecomb.incubator.apache.org/cn/users/service-contract/)(Open API 描述文件),并且将内容注册到[服务中心](https://github.com/apache/incubator-servicecomb-service-center)。使用者可以从服务中心下载相关的服务契约进行开发。 Apache ServiceComb 的各种治理结构也是基于契约的,可以让开发者独立于业务实现对系统进行统一的管控治理。 + +### 连接异构系统 + +[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 早期版本提供了gRPC、REST、SOAP等多种协议,当前主要[支持 REST 和Highway 高性能私有 RPC 两种协议](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/)。 + +#### [Highway 高性能私有 RPC 协议](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/#highway-rpc%E5%8D%8F%E8%AE%AE) + +gRPC 相对于 REST 的最显著优点就是性能,它采用长连接、高效的二进制序列化方式,提供多种语言支持, 提供了 IDL 语言约束开发者按照标准的方式工作, 一切看起来是那么的完美。 + +实际上,[Apache ServiceComb ](http://servicecomb.incubator.apache.org/cn/)的第一轮重构,首选也是 gRPC 。历史第一次在[华为云 微服务引擎 CSE](https://support.huaweicloud.com/usermanual-servicestage/zh-cn_topic_0053812706.html) 上线以后,面对了来自网关压力挑战。 + +网关作为业务接入端,必须高效的管理连接和保证公平,长连接容易导致拒绝服务。gRPC 程序开发完成后,开发人员无法利用系统提供的各种工具进行测试,网络包分析也变得困难,给生产环境上的开发联调造成了困难。随着业务规模的增长,gRPC 面临了诸如“其他三方系统如何与之直接通信? 如何跨网关与它间接通信?”等更严峻的挑战。 + +解决这些问题,将需要我们扩展和改善老的协议和程序,提供 gRPC 客户端支持,开发者需自行提供一个额外的表示层用于业务接口的逻辑转换,造成大量的重复代码。同时由于 gRPC 依赖于接口定义,并根据定义生成代码,一套代码只能跑在 gRPC 协议上,如果用户希望业务应用可以使用如 REST等其他更加灵活的方式, 就需自行重新实现一套新的代码逻辑。据以上的血泪史, gRPC 最终被 Apache ServiceComb 设计团队定义为只能在中小型系统内部之间使用,并通过协议网关与外部系统进行通信。并实现了 [高性能私有协议 Highway](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/#highway-rpc%E5%8D%8F%E8%AE%AE) 作为RPC首选默认协议。 + +#### [REST 通信协议](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/) + +REST 相较 gRPC ,最大的痛点是性能。 + +多数技术人员脑海里一个不成文的根深蒂固的观点:”二进制编码效率远高于文本协议,采用二进制编码的系统的性能远高于采用文本的 HTTP ”。该观点甚至会让多数决策止步于理论,多数人甚至不愿尝试去优化 REST。 + +可喜的是 [开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 迈出了重构 REST 底层通信实现的第一步,基于 Netty 的异步框架来替换 Tomcat 实现,实践的效果大大超出预期,部分基准测试数据结果显示比 gRPC 还好, gRPC最终输在了HTTP2 协议上的额外报文。 + +优化后的 REST 和业界开源的其他基于二进制的 RPC 实现的性能基本持平。在一个简单的提供数据库查询的代码逻辑中,优化后的REST通信框架处理时间,占比总处理时间远小于千分之一,这意味着再继续在框架层面进行大量优化也抵不上业务应用层面最简单的一个操作带来的消耗,Apache ServiceComb对 REST 的优化已经满足要求,最终也选择了 [REST](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/) 作为首选和缺省协议(HTTP + json)。 + +我们并没有就此止步。 + +需要迁移到 [华为云 微服务引擎 CSE](https://support.huaweicloud.com/usermanual-servicestage/zh-cn_topic_0053812706.html) 的业务日益增长,部分历史遗留系统也需进行对接。通信协议对应不同的开发者接口,每每增加通信协议,则需要对业务代码进行大量的重复构建,造成大量无谓消耗。这是当时的华为云化转型以及当下很多云化转型企业或者云原生企业必将面临的痛点。 + +于是乎,通信协议层被剥离了出来,和业务代码隔离,系统运行基于契约,[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 实现通信协议扩展机制。通信协议扩展机制,帮助用户解决与 gRPC 框架、自定义二进制框架等许多遗留系统的对接通信问题。 + +在 Apache ServiceComb 框架中,[切换协议](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/)非常简单,不需要修改一行业务代码。多个协议共存也是允许的。 + +```json +ServiceComb: + rest: + address:0.0.0.0:8084 + highway: + address:0.0.0.0:8094 +``` + + + +## 扩展性 + +扩展性是系统进一步发展的基石。[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 创造性地将扩展性拓展到 Provider 和 Consumer,让开发者拥有一致的开发体验。 + +### 内部系统结构 + +连接开发者和通信协议层面已经让系统具备了很大的扩展性。微服务化给系统解耦、团队自治带来了很大的灵活性,加快了开发生产效率,但同时带来了服务管控的复杂性,在微服务领域,不得不考虑雪崩效应、调用跟踪、性能监控与分析等实际管控治理问题。 + +基于服务契约,[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 提供了[动态插拔扩展的处理链机制](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/handlers),并且为这些管控治理能力提供了默认实现,用户可以灵活插拔这些处理模块,或调整它们的顺序以应对不同的处理场景,或自行实现以增加新的处理模块。Provider 和 Consumer 都会经过该处理链,这给客户端治理功能开发带来了极大的便利性。Apache ServiceComb 的运行结构如下: + +![running-arch]({{ site.url }}{{ site.baseurl }}/assets/images/open-design-running-arch.png){: .align-center} +图1 Apache ServiceComb 运行时架构 +{: .figure-caption} + +Apache ServiceComb 同时支持同步和异步两种编程接口,并在通信实现上采用了纯异步方式,对于运行模型的扩展,也是基于异步回调接口的。该方式提供了比同步模式(比如 Filter)更加优雅灵活的扩展方式。 + +在Apache ServiceComb 结构中,几个核心的扩展机制均在 [core 模块](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/core/src/main/java/org/apache/servicecomb/core) 进行定义: + +**[Producer Provider](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/core/src/main/java/org/apache/servicecomb/core/provider/producer)** + +Provider 编程模型的扩展,通过实现这个接口,可以适配不同的 Provider编 程风格;默认支持 RPC、Spring MVC 和 JAX-RS 三种风格。 + +**[Consumer Provider](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/core/src/main/java/org/apache/servicecomb/core/provider/consumer)** + +Consumer 编程模型的扩展,通过实现这个接口,可以适配不同的 Consumer 编程风格;默认支持 RPC和RestTemplate 两种风格。RestTemplate 是 Spring MVC 提供的 REST 编程接口,可以在服务层解除接口依赖,只依赖数据模型。 + +**[Handler](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/core/src/main/java/org/apache/servicecomb/core/handler)** + +处理链的接口,通过扩展该接口,可以在处理过程中插入任意的逻辑。默认已经支持[负载均衡](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/handlers/handler-loadbalance)、[错误注入](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/handlers/handler-fault-injection)、[流量控制](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/handlers/handler-flowcontrol-qps)和[调用链跟踪](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/handlers/handler-tracing-zipkin)等多个处理链。开发者可以针对 Consumer 和 Provider 定义不同的处理链,并且为访问不同的微服务定制不同的处理链。 + +**[Transport](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/transports)** + +通信协议扩展,默认支持[REST over Vertx、Rest over Servlet、Highway](http://servicecomb.incubator.apache.org/cn/users/communicate-protocol/)协议。 + +**Invocation** + +中立的对象。所有的运行模型都面向这个中立的对象进行编程,当定义好服务接口后,对服务的治理和服务业务逻辑的开发可并行进行。在编程模型和通信模型里面,也面向这个对象进行编解码。 + +### 对接外部系统 + +[Apache ServiceComb Java-chassis](https://github.com/apache/incubator-servicecomb-java-chassis) 预留了对接外部系统的接口,以让开发者或用户可以灵活快速切换使用第三方提供的服务,这里所指的外部系统包括但不限于:服务注册发现的服务中心、配置管控和治理的配置中心、运行监控和运维的治理中心等。 + +下图展示了不同的开发框架支持和运行的第三方系统情况,这些基础服务都给开发者预留了可以进行支持接入的接口。 + +![third-party-plugin]({{ site.url }}{{ site.baseurl }}/assets/images/open-design-third-party-plugin.png){: .align-center} +图2 Apache ServiceComb 外部扩展接入 +{: .figure-caption} + +重要的扩展: + +**[ServiceRegistryClient](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/service-registry/src/main/java/org/apache/servicecomb/serviceregistry/client):** + +实现这个接口以对接不同的注册服务。 + +**[ConfigCenterConfigurationSource](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/foundations/foundation-config)** + + 实现这个接口以对接不同的配置服务。 + +此外,ServiceComb还提供了对接[Zipkin](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/tracing/tracing-zipkin)、Servo等开源系统的功能,这些可以从[github代码](https://github.com/apache/incubator-servicecomb-java-chassis/)中查找到对应的例子。 + +### 运行环境集成 + +一个完整的业务系统不是使用RPC框架就算完成了,它们还需要其他的计算资源。对于一般的业务系统都需要访问数据库,或者基于 J2EE 的设施进行工作。 + +[开源微服务框架 Apache ServiceComb](http://servicecomb.incubator.apache.org/cn/) 可以以轻量级的方式运行,也可集成到其他系统框架。下面的示意图说明了 Apache ServiceComb 的一些工作环境。 + +![integrate-with-running-environment]({{ site.url }}{{ site.baseurl }}/assets/images/open-design-integrate-with-running-environment.png){: .align-center} +图3 Apache ServiceComb 运行环境集成 +{: .figure-caption} + +- 若业务只需 REST 接口,可以轻量级的方式运行 Apache ServiceComb 。所有的REST接口运行于ServiceComb 提供的 Netty HTTP 之上。 +- 若业务是基于 J2EE 来构建,那么 Apache ServiceComb 可以作为一个 Servlet ,运行于 Web 容器里面(如 Tomcat、Jetty 等)。 +- 若业务基于 Spring Boot 生态构建,Apache ServiceComb 可作为一个starter对外提供 REST 服务,开发者可以自由使用其他基于 Spring Boot 的功能。 + +由于 Apache ServiceComb 使用了Spring,因此天然继承了Spring的原有优势,可和很多通用的组件很好的集成,如 mybatis、JPA 等。各种集成方式,都可以从[ServiceComb官网](http://servicecomb.incubator.apache.org/cn/)或者[ServiceComb 示例库](https://github.com/apache/incubator-servicecomb-java-chassis/tree/master/demo)找到对应的例子。 + +## 写在最后 + +开源微服务框架 Apache ServiceComb 的主体代码是由华为云微服务引擎捐赠给 Apache 软件基金会的,愿景是帮助企业快速构建云原生应用,通过一系列解决方案帮助用户快速开发微服务应用的同时实现对这些微服务应用的高效运维管理。本次设计团队将开放性设计部分细节点点滴滴分享出来也是为了能够解放开发者和用户。 + +当前越来越多的贡献者已加入到 社区行列,Apache ServiceComb 会和这些志愿者们一起一如既往坚持这个理念,争取给业界带来更多好的技术和分享。也期望有更多有志者一起行动。 + +[**如何加入Apache ServiceComb 社区**](http://servicecomb.incubator.apache.org/cn/docs/join_the_community/) + + + +参考文献** + +[1] 开源微服务框架 Apache ServiceComb 官网 + +[http://servicecomb.incubator.apache.org/cn/](http://servicecomb.incubator.apache.org/cn/) + +[2] 开源微服务框架 Apache ServiceComb 代码 + +[https://github.com/apache/incubator-servicecomb-java-chassis](https://github.com/apache/incubator-servicecomb-java-chassis) + +[https://github.com/apache/incubator-servicecomb-service-center](https://github.com/apache/incubator-servicecomb-service-center) + +[https://github.com/apache/incubator-servicecomb-saga](https://github.com/apache/incubator-servicecomb-saga) + +[3] 华为云微服务引擎 CSE(Cloud Service Engine) + +入口 [https://www.huaweicloud.com/product/cse.html](https://www.huaweicloud.com/product/cse.html) + +资料 [http://support.huaweicloud.com/cse_dld/index.html](http://support.huaweicloud.com/cse_dld/index.html) diff --git a/assets/images/open-design-integrate-with-running-environment.png b/assets/images/open-design-integrate-with-running-environment.png new file mode 100644 index 0000000000000000000000000000000000000000..9105b8c023480dfbbc6ff5dfa311443c5a6c5c86 GIT binary patch literal 45070 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 z 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

r?)>W{7gE~8JnRR*rFRJtS=$s

M9Us-2Zx>E3I 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