检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本地开发工具说明 本地开发工具包含了ServiceComb引擎2.x的本地轻量化版本,提供用于本地开发的轻量服务中心、配置中心,和简单易用的界面。 使用说明请参考本地开发工具压缩包中的README.md文件。 表1 本地引擎资源配额限制 功能 资源 最大配额 微服务管理 微服务版本数量(个)
大部分技术团队都会选择开源框架来构建业务。 开发微服务应用的具体内容,请参考开发微服务应用。 使用Spring Cloud,通常会使用下面的技术进行本地微服务开发: 使用Java Chassis,通常会使用下面的技术进行本地微服务开发: 准备环境 创建云上环境,以支持Servic
Boot、Spring Cloud广泛应用于构建微服务应用。使用ServiceComb引擎托管Spring Cloud应用,主要目的是使用高可靠的商业中间件替换开源组件,对应用系统进行更好地管理和运维,改造过程应尽可能降低对业务逻辑的影响。适用于如下场景: 基于Spring Boot
ServiceComb引擎的服务中心提供了服务注册的功能。服务注册是指微服务启动的时候,将基本信息,比如所属应用、微服务名称、微服务版本、监听的地址信息等注册到服务中心。 配置中心用来管理微服务应用的配置。微服务连接配置中心,能够从配置中心获取配置信息及其变化。配置中心还是其他微服务管控功能的核
开发微服务应用 如您已经完成了微服务应用的开发,请跳过本章节。 开源社区提供了丰富的开发资料和帮助渠道帮助您使用微服务开发框架。如您需深入了解具体微服务框架下的微服务应用开发,请参考本章节给出的参考资料链接。 体验ServiceComb引擎最快捷的方式是使用“ServiceCom
环境是production时,重复注册契约导致启动失败。 v1.3.3-Greenwich 注册中心监听不生效。 1.6.1-Finchley 服务启动后第一次并发,调用随机失败。 微服务跨应用调用失败。 1.6.0-Finchley SDK针对401、403错误码,对引擎做出重试请求。 gateway路由规则不生效。
与其他服务的关系 云原生架构模式下,完成业务功能需要很多服务相互配合: CSE一般和数据库、缓存和消息中间件同时使用,完成业务功能的开发。 AOM、APM、LTS等工具,则为业务提供运维能力,帮助检测业务故障、分析故障原因。 以Spring Cloud为例,典型的云原生架构和技术选型如下:
应用逻辑隔离管理 应用逻辑隔离主要用于不同的开发环境共享公共CSE资源的场景,降低成本。逻辑隔离还用于微服务之间的关系管理,通过配合合理的隔离策略,可以更好地控制微服务之间的可访问性、权限等。 服务发现 按照app隔离不同的业务域的微服务。 不同的业务域使用不一样的app名称。同
准备环境 环境准备包括本地开发调试环境和云上环境准备。 准备本地开发调试环境 本地开发调试环境用于搭建一个简易的测试环境,可以有以下两种选择: 下载本地轻量化微服务引擎。 使用ServiceComb引擎专享版,并开放公网访问的IP,保证本地环境能够访问。 准备云上环境 微服务应用
命名空间ID 仅支持大小写字母、数字、短划线(-)和下划线(_),且不超过128个字符。命名空间ID必须唯一。 说明: 创建时若未输入ID值,则由系统随机生成。 单击“确定”,命名空间创建完成。 编辑命名空间 登录微服务引擎控制台。 在左侧导航栏选择“注册配置中心”。 单击待操作的Nacos引擎实例名称。
ServiceComb引擎应用治理 Spring Cloud应用实现优雅上下线功能 Spring Cloud应用实现标签路由功能 Spring Cloud应用实现全链路灰度 Dubbo应用实现标签路由功能 Spring Cloud应用对接ASM进行服务发现 父主题: ServiceComb引擎
应用场景 微服务注册发现 微服务启动时,将实例信息注册到CSE,包括实例的基本信息,如应用名称、微服务名称、版本号、服务契约、实例地址等;微服务需要调用其他微服务的接口时,从CSE查询实例信息,并将实例信息缓存到本地,缓存会通过事件通知、定时查询等机制更新;通过本地缓存的地址信息
Agent,支持Dubbo应用无需任何修改接入ServiceComb引擎,当前已支持应用注册发现、标签路由功能。 Sermant Agent是基于Sermant开源社区构建的、用于CSE微服务治理场景的Agent。 Sermant Agent基于Java Agent技术实现,应用通过Sermant Agent可实现无
pluginName 否 String 插件名。 priority 否 Integer 插件的调用优先级。 sha256 否 String 用于校验插件和容器的校验和。 url 否 String 插件或容器的下载地址。 verificationKey 否 String 校验值。 响应参数
DependencyKey object 依赖关系条目。 rev 否 String 客户端缓存的版本号,用于判断本地缓存和服务中心微服务的差异。 首次传值0。 若传入的rev值与当前的微服务的rev一致,则返回notModified;若不一致,则返回updated信息。 下次请求若需要传
获取配置失败 问题现象 微服务在接入相应的微服务开发框架(如spring-cloud-huawei、java-chassis)后,微服务通过SDK调用查询配置接口到ServiceComb引擎获取配置项失败。 问题原因 微服务与注册中心间的连接因网络、CPU等其他因素发生抖动时,可能会导致请求异常。
MicroService object 微服务信息。 表4 MicroService 参数 参数类型 描述 serviceId String 微服务唯一标识。字符长度为1~64。正则表达式为^.*$。 environment String 用于区分微服务环境,取值为development
容错的原理为:根据重试时间间隔的是否固定,分为固定间隔重试和指数间隔重试两种策略,默认重试策略为固定间隔重试。 Java Chassis的容错作用于微服务消费者,需要微服务应用集成容错模块,启用bizkeeper处理链。 配置示例如下: servicecomb: handler:
下线、标签路由等功能。 此功能目前处于公测阶段,当前仅在华东-上海一支持。 Sermant Agent是基于Sermant开源社区构建的、用于CSE微服务治理场景的Agent。 Sermant Agent基于Java Agent技术实现,应用通过Sermant Agent可实现无代理、非侵入方式接入CSE。
MicroService objects 微服务列表。 表4 MicroService 参数 参数类型 描述 serviceId String 微服务唯一标识。字符长度为1~64。正则表达式为^.*$。 environment String 用于区分微服务环境,取值为development