检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
AK/SK认证方式排查与切换指导 请确认您是否使用微服务引擎专业版。 是,执行2。 否,操作结束。 请确认您是否使用ServiceStage容器部署方式部署您的微服务应用。 是,执行3。 否,操作结束。 为微服务应用配置AK/SK,请参考配置AK/SK。 父主题: 附录
降级 降级治理是在业务高峰期时,需要临时减少对于目标服务的访问,达到降低目标服务负载;或者屏蔽对于非关键服务的访问,保持本服务的核心处理能力的治理措施。 Java Chassis降级治理是作用于微服务消费者,需要微服务应用集成降级模块,启用bizkeeper-consumer处理链
限流 限流规则借鉴了Resilience4j的思想,作用在服务端,其原理为:每隔limitRefreshPeriod的时间会加入rate个新许可,就可以最多接受rate个请求,超过的将被限流,返回响应码429。 Java Chassis的限流作用于微服务提供者,需要微服务应用集成流量控制模块
Mesher简介 什么是Mesher Mesher是Service Mesh的一个具体的实现,是一个轻量的代理服务以Sidecar的方式与微服务一起运行。 Service Mesh是由William Morgan定义: Service Mesh是一个基础设施层,用于处理服务间通信。
常用概念 应用:可以将应用理解为完成某项完整业务场景的软件系统。应用一般由多个微服务组成,应用里面的微服务能够相互发现和调用。 微服务:完成某项具体业务功能的软件系统。微服务是独立开发、部署的单元。 微服务实例:将微服务采用部署系统部署到运行环境,就产生了实例。可以将实例理解为一个进程
图1 ServiceStage使用流程 前提条件 已注册华为账号并开通华为云。 当前登录账号拥有使用ServiceStage服务的权限。账号权限授权与绑定,请参考创建用户并授权使用ServiceStage。 创建一个虚拟私有云VPC,请参考创建虚拟私有云和子网。
如何决定使用SDK构建微服务还是使用ServiceMesh? SDK方式适合完全自治的微服务,方便线下调试,但是需要引入SDK,基于SDK进行开发。 Mesher的方式需要在部署的时候准备Mesher环境,开发方便,无需引入其他的SDK。 使用Mesher场景 将非Java语言编写的业务代码改造为微服务
使用服务注册 微服务引擎的服务中心提供了服务注册的功能。服务注册是指微服务启动的时候,将基本信息,比如所属应用、微服务名称、微服务版本、监听的地址信息等注册到服务中心。 微服务运行的过程中,也通过服务中心查询其他微服务的基本信息。不同的微服务开发框架注册的信息会有差异,比如Java
负载均衡 负载均衡作用在客户端,是高并发、高可用系统必不可少的关键组件,目标是尽力将网络流量平均分发到多个服务器上,以提高系统整体的响应速度和可用性。 Java Chassis的负载均衡作用于微服务消费者,需要微服务应用集成负载均衡模块,启用loadbalance处理链。 配置示例如下
部署微服务应用 应用是一个功能相对完备的业务系统,由一个或多个特性相关的组件组成。组件是组成应用的某个业务特性实现,以代码或者软件包为载体,可独立部署在环境下运行。 微服务应用部署,请参考创建并部署组件。 父主题: 微服务开发指南
熔断 熔断规则借鉴了Resilience4j的思想,作用在服务端,其原理为: 达到指定failureRateThreshold错误率或者slowCallRateThreshold慢请求率时进行熔断,返回响应码429,慢请求通过SlowCallDurationThreshold定义。
安全认证概述 开启了安全认证的微服务引擎专享版,通过微服务控制台提供了基于RBAC(Role-Based Access Control,基于角色的访问控制)的系统管理功能。权限与角色相关联,您可以使用关联了admin角色权限的账号创建新账号,根据实际业务需求把合适的角色同账号关联。
错误注入 用户在consumer端使用故障注入,可以设置发往指定微服务的请求的时延和错误及其触发概率用来在业务高峰期时保护核心业务只被关键微服务访问。 Spring Cloud Huawei暂不支持错误注入治理策略。 Java Chassis错误注入治理是作用于微服务消费者,需要微服务应用集成错误注入模块
使用仪表盘 仪表盘提供一些基础的微服务运行监控能力。微服务通过SDK上报运行状态数据,上报的数据内容包括请求统计数据,比如请求数、时延、错误率等,还包括和治理有关的一些状态,比如熔断状态等。 Spring Cloud使用仪表盘,不需加入依赖,可直接使用。Spring Cloud包含如表
Java Chassis版本升级参考 使用2.1.3版本之前的Java Chassis接入微服务引擎。 需要额外引入CSE SDK。 引入CSE SDK使用如下Maven Dependency Management: <dependencyManagement>
Spring Cloud使用配置中心 Spring Cloud使用配置中心,需要在项目中增加如下依赖: <dependency> <groupId>com.huaweicloud</groupId> <artifactId>spring-cloud-starter-huawei-config
Java Chassis使用配置中心 Java Chassis使用以config-center命名的配置中心。 需要在项目中增加如下依赖: <dependency> <groupId>org.apache.servicecomb</groupId> <artifactId>
黑白名单 基于公钥认证机制,微服务引擎提供了黑白名单功能。通过黑白名单,可以控制微服务允许其他哪些服务访问。 只有启用了公钥认证,设置的黑白名单才能生效。 父主题: 使用服务治理
容错 容错的原理为:根据重试时间间隔的是否固定,分为固定间隔重试和指数间隔重试两种策略,默认重试策略为固定间隔重试。 Java Chassis的容错作用于微服务消费者,需要微服务应用集成容错模块,启用bizkeeper处理链。 配置示例如下: servicecomb: handler
使用灰度发布 为保障新特性平稳上线,可以先选择少部分用户试用,待新特性成熟以后,再让所有用户使用。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以减少其影响。 基于Servicecomb Java Chassis和Spring Cloud Huawei框架注册到微服务引擎的微服务