华为云PaaS平台微服务治理3微服务引擎CSE

58 篇文章 1 订阅
14 篇文章 1 订阅

3微服务引擎CSE

3.1华为云PaaS平台介绍

华为云PaaS平台以华为FusionStage2.0项目为基础,基于Docker、Kubernetes等主流开源容器项目,提供了开 发、测试、部署、运维的全流程自动化流水线能力,提供先进的微服务框架和丰富的服务组件,致力于让开发者专 注于代码开发本身,提升开发效率,支持丰富的应用生态,推动企业更好的云化转型。

什么是PaaS?
PaaS是云计算的三种模式之一,三种模式如下:

IaaS: Infrastructure-as-a-Service(基础设施即服务),也叫Hardware-as-a-Service,将计算机硬件资源打包对外提供服务,比如云主机、云存储等。
PaaS: Platform-as-a-Service(平台即服务),也叫中间件服务,比如:MySQL数据库服务、ElasticSearch搜索服务等。 SaaS: Software-as-a-Service(软件即服务) ,提供具体应用软件服务,比如:CRM系统,电商平台等。

什么是FusionStage2.0?
华为云称为FusionCloud,它包括三部分:FusionStage(PaaS服务),FusionInsight(华为大数据平台)、
FusionSphere(IaaS服务),FusionStage作为华为PaaS平台的项目其版本已经升级到2.0。

什么是Docker?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。微服务由于数量众多,其推荐的部署方式业界流行的做法就是Docker技术,使用Docker可以快速批量部署微服务,提高运维效率。

什么是Kubernetes?
Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,使用Kubernetes的目标是让Docker容 器化部署更加简单、智能和高效。

华为云PaaS平台支持哪些微服务开发框架?
华为云PaaS平台不光提供云容器部署、微服务治理的功能,而且提供微服务开发、测试、部署、运维一站式解决方案,支持Dubbo、SpringCloud等技术开发的微服务接入PaaS平台,也支持老系统的接入,并且对于Apache ServiceComb开的微服务应用更是零修改代码接入。
华为云PaaS平台提供微服务引擎CSE框架,此框架在ServiceComb框架的基础上另外提供更多的商业功能支持。本 教程会讲解SpringCloud项目接入CSE的方法。

3.2微服务引擎CSE介绍

微服务引擎CSE(Cloud Service Engine) 是华为云PaaS家族提供的企业级微服务应用管理平台,包含微服务SDK(用于开发)、服务注册、配置和治理中心,帮助用户实现微服务应用的快速构建、实时监控和高可用保障。兼容主流开源生态,不绑定特定开发框架和平台。
在这里插入图片描述
CSE具备开发模式门槛低、通用性强的改造优势,并支持契约优先,服务接口统一规范管理,微服务之间的调用非常方便,根据业务的现实痛点将其后端拆分为多个微服务,并实施集群部署,这一切全部基于CSE微服务框架开发 并统一管理。
产品功能如下:
微服务开发框架
打包了微服务注册、发现、通信和治理等基础能力,开箱即用。微服务治理中心
提供微服务负载均衡、限流、降级、熔断、容错等治理能力。
微服务安全管控
提供认证鉴权、黑白名单等能力,保障微服务访问安全。微服务灰度发布
支持使用接口任意参数(例如用户群组、用户类别、用户所属区域等等)定义微服务灰度发布规则。
分布式事务管理
提供最终一致性(TCC)和强一致性(WSAT)事务管理框架。 非侵入式微服务接入
提供Service Mesh服务,可实现非侵入式接入已有微服务。
统一配置中心
支持微服务配置项的发布、变更和通知。微服务仪表盘
提供微服务实例和接口级吞吐量、时延和成功率的实时监控仪表盘。

ServiceComb与CSE有什么不同?
1、 CSE是ServiceComb的商业版本,CSE的大部分组件来自于开源的ServiceComb,ServiceComb是开源的, CSE没有开源但可以免费使用。
2、 使用ServiceComb开发的微服务不依赖华为云,使用CSE开发的微服务则依赖华为云。为什么要用微服务引擎CSE?
在云上使用CSE,用户无需关心自己业务之外的微服务基础设施,保证系统整体稳定性。同时微服务部署,管理、治理全部开箱即用,还可以获得开发时期的指导和帮助,以及后续技术发展的最新信息。

3.3ServiceComb项目接入CSE

3.3.1准备华为云环境
参考“快速体验”章节的“华为云环境”章节内容,注册云账号、获取AK/SK密钥。
3.3.2服务提供方
本案例使用ServiceComb回顾章节的helloworld案例进行改造,ServiceComb接入CSE只需要修改依赖及部分配置,无需修改代码。
3.3.2.1引入依赖
接入CSE平台需要在服务提供方及消费方引入 cse-solution-service-engine依赖,为了控制依赖版本在父工程进行依赖管理如下:

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

在服务提供方添加依赖:


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

服务提供方完整的pom.xml 如下:

<?xml version="1.0" encoding="UTF‐8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema‐instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven‐4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.itheima</groupId>
<artifactId>test‐servicecomb</artifactId>
<version>1.0‐SNAPSHOT</version>
</parent>
<artifactId>helloworld‐provider</artifactId>

<dependencies>
<dependency>
<groupId>com.huawei.paas.cse</groupId>
<artifactId>cse‐solution‐service‐engine</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j‐log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.itheima</groupId>
<artifactId>helloworld‐api</artifactId>
<version>1.0‐SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.servicecomb</groupId>
<artifactId>spring‐boot‐starter‐provider</artifactId>
</dependency>

<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate‐validator</artifactId>
</dependency>
</dependencies>

</project>

3.3.2.2服务描述配置
注册中心更改为公有云地址,并且配置AK/SK。


APPLICATION_ID: helloworld service_description:
name: helloworld‐provider version: 1.0.0
cse:
service:
registry:
address: https://cse.cn‐north‐1.myhuaweicloud.com instance:
watch: false




credentials:
accessKey: CMPEUCGEDINQKGWBGHVB
secretKey: HEYSZL5zTw6HLfPEOxzGnWpbzLwHWAylUc99vMtd akskCustomCipher: default
rest:
address: 0.0.0.0:8080

3.3.2.3启动服务
启动服务后,登录云平台:微服务引擎CSE–>微服务管理—>服务目录
在这里插入图片描述
3.3.2.4测试
在浏览器输入http://localhost:8080/hello?name=%E9%BB%91%E9%A9%AC 输出如下:

{"name":"黑马","age":0,"address":"北京","birthday":null}

3.3.3服务消费方
3.3.3.1引入依赖
同提供提供方。
3.3.3.2服务描述配置
同提供提供方。
3.3.3.3启动服务
启动消费者服务
3.3.3.4测试
客户端请求服务消费方,服务消费方请求服务提供方。
浏览器请求:http://localhost:8081/request?name=黑马

http://localhost:8081/request:是服务消费方的地址输出:

{"name":"黑马","age":0,"address":"北京","birthday":null}

3.4小结

本章节重点讲解了ServiceComb项目接入CSE的方法,全新的CSE项目开发可以按照ServiceComb开发流程进行, 并且引用CSE依赖、配置公有云注册中心地址等,详细的流程如下:
1、注册云账号
2、引入依赖
添加依赖管理如下:

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

添加依赖如下:


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

3、接口定义
同serviceComb开发。
4、服务描述配置
配置公有云注册中心地址。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值