华为云ServiceComb引擎实战-01.服务注册与配置

转载请注明出处



相关系列

微服务创建

当 ServiceComb 引擎部署好之后。浏览器访问 ${IP}:30103 可以看到控制台页面, 需要在页面中创建对应的微服务。如下图请添加图片描述

注意:
相同应用的微服务直接才可以互相发现
也就是在创建微服务的时候, 填写表单的时候 微服务应用 这一项需要填写成一致的。微服务名称 这一项可以根据具体的服务来填写。

配置创建

当 ServiceComb 引擎部署好之后。浏览器访问 ${IP}:30103 可以看到控制台页面, 选择配置列表来创建应用所需的配置。微服务默认会读取配置中心应用配置服务配置自定义配置

创建的时候配置有下面三个类别:

  • 应用级: 环境、应用和微服务相同的配置
  • 服务级配置:环境、应用、微服务名称和微服务相同的配置
  • 自定义配置: 微服务可以在配置文件中指定一个特定的label及label值,自定义配置指label及label值与微服务相同的配置

具体的操作页面如下:
请添加图片描述
请添加图片描述

代码开发

依赖引入

工程原本依赖了一些 Spring cloud alibaba所需的依赖, 这里我们先不处理那些依赖, 直接引入华为云的SDK,后续在配置文件文件中关闭 Spring cloud alibaba 的相关功能即可

<dependency>
    <groupId>com.huaweicloud</groupId>
    <artifactId>spring-cloud-starter-huawei-service-engine</artifactId>
    <!-- 当前最新版本 -->
    <version>1.11.10-2023.0.x</version>
    
    <!-- 排除部分冲突的依赖 -->
    <exclusions>
        <exclusion>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.huaweicloud</groupId>
            <artifactId>spring-cloud-starter-huawei-swagger</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>

新增 bootstrap.properties

# 注意这里的应用名需要和页面上创建的对应上, 相同应用的微服务直接才可以互相发现
# 注意这里的应用名需要和页面上创建的对应上, 相同应用的微服务直接才可以互相发现
# 注意这里的应用名需要和页面上创建的对应上, 相同应用的微服务直接才可以互相发现
spring.cloud.servicecomb.service.application=${CSE_APPLICATION_NAME:xxxxx}
# 注意这里的服务名需要和页面上创建的对应上
spring.cloud.servicecomb.service.name=${CSE_SERVICE_NAME:xxxxxxxx}
spring.cloud.servicecomb.service.version=${CSE_SERVICE_VERSION:6.0.0}
spring.cloud.servicecomb.service.environment=${CSE_SERVICE_ENVIRONMENT:production}
# 禁止注入 servicecomb 的 restTemplate 实现
spring.cloud.servicecomb.restTemplate.retry.enabled=${CSE_REST_TEMPLATE_ENABLE:false}
# 关闭 trace 日志, 开启会打印很多日志, 根据自己需求来决定是否要开启
spring.cloud.servicecomb.context.enable-trace-info=${CSE_CONTENT_TRACE_ENABLE:false}

 # 配置中心
spring.cloud.servicecomb.config.enabled=${CSE_CONFIG_ENABLED:true}
spring.cloud.servicecomb.config.serverAddr=${CSE_CONFIG_SERVICE_ADDRESS:http://127.0.0.1:30110}
spring.cloud.servicecomb.config.serverType=${CSE_CONFIG_SERVICE_TYPE:kie}

# 注册中心
spring.cloud.servicecomb.discovery.enabled=${CSE_DISCOVERY_ENABLED:true}
spring.cloud.servicecomb.discovery.address=${CSE_DISCOVERY_SERVICE_ADDRESS:http://127.0.0.1:30100}
spring.cloud.servicecomb.discovery.publish-address=${CSE_DISCOVERY_PUBLISH_ADDRESS:}
spring.cloud.servicecomb.discovery.health-check-interval=${CSE_DISCOVERY_HEALTH_CHECK_INTERVAL:15}
spring.cloud.servicecomb.discovery.poll-interval=${CSE_DISCOVERY_POLL_INTERVAL:15000}
spring.cloud.servicecomb.discovery.wait-time-for-shut-down-in-millis=${CSE_DISCOVERY_WAIT_TIME_FOR_SHUT_DOWN_IN_MILLIS:15000}

# 认证
spring.cloud.servicecomb.credentials.enabled=${CSE_CREDENTIALS_ENABLED:false}
spring.cloud.servicecomb.credentials.account.name=${CSE_CREDENTIALS_USER:oa}
spring.cloud.servicecomb.credentials.account.password=${CSE_CREDENTIALS_PASS:xxx}
spring.cloud.servicecomb.credentials.account.cipher=${CSE_CREDENTIALS_CIPHER:default}

# 禁用原本使用的Nacos配置中心
spring.cloud.nacos.config.enabled=${NACOS_CONFIG_ENABLE:false}
# 禁用原本使用的Nacos注册中心
spring.cloud.nacos.discovery.enabled=${NACOS_DISCOVERY_ENABLE:false}

启动

我们的微服务应用将读取 ServiceComb 配置中心的配置, 并注册到ServiceComb的注册中心。并且微服务直接可以互相调用。如下图
请添加图片描述

参考链接

  • https://www.huaweicloud.com/product/cse.html
  • https://support.huaweicloud.com/devg-cse/cse_04_0046.html
  • https://support.huaweicloud.com/devg-cse/cse_04_0009.html
  • https://support.huaweicloud.com/intl/zh-cn/bestpractice-cse/cse_05_0009.html
  • https://github.com/huaweicloud/spring-cloud-huawei-samples/blob/master/basic/provider/src/main/resources/bootstrap.yml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值