Dubbo应用接入

最近更新时间:2020-08-19 15:11:20

操作场景
KMSE作为服务注册中心,通过依赖 jar 包的方式接入Dubbo服务。本例介绍如何通过Spring Boot的方式接入,其他方式请参阅Dubbo官网。
操作步骤

  1. 添加依赖 根据业务使用的对应的 TSF Dubbo 版本 SDK 如下:
    maven依赖
<dependency>
  <groupId>org.apache.dubbo</groupId>
  <artifactId>dubbo-spring-boot-starter</artifactId>
  <version>${dubbo-version}</version>
</dependency>
<dependency>
  <groupId>org.apache.dubbo</groupId>
  <artifactId>dubbo-registry-consul</artifactId>
  <version>${dubbo-version}</version>
</dependency>
<dependency>
  <groupId>com.orbitz.consul</groupId>
  <artifactId>consul-client</artifactId>
  <version>${consul-client-version}</version>
</dependency>
  1. 编辑相关配置 第一步,编辑application.yaml
dubbo:
  application:
    name: hello-world-app
  registry:
    protocol: consul
    address: consul-kmse-system-consul-client.kmse-system #本地调试时请改为本地地址
    port: 8500
  protocol:
    name: dubbo
    port: 20880

第二步,编写启动类

@EnableDubbo
@SpringBootApplication
public class DubboProviderApplication{
   public static void main(String[] args) throws IOException {
      SpringApplication.run(DubboProviderApplication.class, args);
   }
}

第三步,编写接口和实现类

public interface DemoService {
    String sayHello(String name);
}
 
@DubboService(interfaceClass = DemoService.class)
@Component
public class DemoServiceImpl implements DemoService {
    public String sayHello(String name) {
        return "Hello " + name;
    }
}
  1. Spring Boot 打包 通过 spring-boot-maven-plugin 构建一个包含所有依赖的 jar 包(FatJar),执行命令mvn clean package。
  2. 启动服务
// 日志显示以下内容表示启动成功
2020-08-17 14:52:21.528  INFO 29568 --- [pool-1-thread-1] .b.c.e.AwaitingNonWebApplicationListener :  [Dubbo] Current Spring Boot Application is await...

金山云,开启您的云计算之旅

免费注册