Skip to content

Latest commit

 

History

History
124 lines (80 loc) · 4.95 KB

File metadata and controls

124 lines (80 loc) · 4.95 KB

Service-Registry

简体中文 | English

本文主要介绍服务注册插件以及该插件的使用方法。

功能

服务注册插件提供代码无侵入方式,可让原本注册于Eureka,Nacos,Zookeeper、Consul等主流注册中心的微服务,无侵入地注册到Service Center上, 同时支持Dubbo与SpringCloud框架。

使用说明

按需修改核心配置文件

文件路径为:${agent_package_path}/agent/config/config.properties,其中${agent_package_path}需要替换为实际的打包路径。

配置项说明如下:

#应用名
service.meta.application=default
#版本号
service.meta.version=1.0.0
#命名空间
service.meta.project=default
#环境
service.meta.environment=development

按需修改插件配置文件

文件路径为:${agent_package_path}/agent/pluginPackage/service-registry/config/config.yaml,其中${agent_package_path}需要替换为实际的打包路径。

配置项说明如下:

servicecomb.service:
  address: http://127.0.0.1:30100 #注册中心地址,多个注册中心地址使用逗号分隔
  heartbeatInterval: 15 #服务实例心跳发送间隔(单位:秒)
  openMigration: false #是否开启迁移功能
  enableSpringRegister: false #是否开启spring插件注册能力,spring cloud框架需开启,dubbo框架需关闭
  enableDubboRegister: false #是否开启dubbo插件注册能力,dubbo框架需开启,spring cloud框架需关闭
  sslEnabled: false # 是否开启ssl
  • 对于新开发的dubbo应用,还需要设置dubbo本身注册中心地址的配置。这个配置项一般在dubbo应用的配置文件中,比如“dubbo/provider.xml”文件中:
<dubbo:registry address="sc://127.0.0.1:30100"/>

也可能在application.yml(或application.properties)中,以application.yml为例:

dubbo:
  registry:
    address: sc://127.0.0.1:30100

需要强调的是,这个配置项的地址信息不会使用,只使用了协议名称sc(即ip地址不重要,只需要sc:// 开头即可)。

  • 注意:对于存量dubbo应用(即原本已经设置过dubbo本身注册中心地址的应用)无需进行这一步。

结果验证

mvn clean package
  • 启动消费者
# windows
java -Dservicecomb.service.enableDubboRegister=true -javaagent:${path}\sermant-agent-x.x.x\agent\sermant-agent.jar=appName=dubbo-consumer -jar dubbo-consumer.jar

# mac, linux
java -Dservicecomb.service.enableDubboRegister=true -javaagent:${path}/sermant-agent-x.x.x/agent/sermant-agent.jar=appName=dubbo-consumer -jar dubbo-consumer.jar
  • 启动生产者
# windows
java -Dservicecomb.service.enableDubboRegister=true -javaagent:${path}\sermant-agent-x.x.x\agent\sermant-agent.jar=appName=dubbo-provider -jar dubbo-provider.jar

# mac, linux
java -Dservicecomb.service.enableDubboRegister=true -javaagent:${path}/sermant-agent-x.x.x/agent/sermant-agent.jar=appName=dubbo-provider -jar dubbo-provider.jar

注:为了便于测试,这里使用了-Dservicecomb.service.enableDubboRegister=true的方式打开了dubbo注册开关,如果使用了其它的方式打开了dubbo注册开关,则无需添加该参数。

其中${path}需要替换为Sermant工程路径,x.x.x需要替换为Sermant实际版本号,appName为agent启动参数中的应用名,与注册参数无关,执行命令的目录需要为demo应用的jar包目录。

启动参数的具体意义见入口模块

  • 测试

当启动以上2个应用后,登录Service Center后台,查看相关服务实例是否已注册,并且访问应用接口http://localhost:28020/test,确认接口是否正常返回,若接口成功返回,则说明注册成功。

配置说明

核心配置文件插件配置文件均支持环境变量、java -D参数配置),如下所示:

service.meta.application=default

以上配置代表优选读取环境变量或-D参数中service.meta.application的值作为应用名,如果环境变量或-D参数中找不到这个值,则把default作为应用名。

更多文档

返回Sermant说明文档