目标:Dubbo使用Nacos实现注册中心 工具:IDEA--2020.1、Nacos 学习目标:学习如何使用Nacos作为Dubbo服务的注册中心 本次学习的工程下载链接放到文本最后面
package com.xmaven;
public interface IHelloService {
String sayHello(String name); }
<dependencies>
<!--直接引用api-->
<dependency>
<groupId>com.xmaven</groupId>
<artifactId>nacos-sample-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--阿里的dubbo发现服务依赖-->
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-discovery-spring-boot-starter</artifactId>
<version>0.2.4</version>
<exclusions>
<exclusion>
<groupId>com.alibaba.spring</groupId>
<artifactId>spring-context-support</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.7.5</version>
</dependency>
</dependencies>
package com.xmaven;
import org.apache.dubbo.config.annotation.Service;
@Service
public class HelloServiceImpl implements IHelloService {
@Override
public String sayHello(String name) {
return "Hello World:"+name;
} }
dubbo.application.name=spring-boot-dubbo-nacos-sample dubbo.registry.address=nacos://127.0.0.1:8848 dubbo.protocol.name=dubbo dubbo.protocol.port=20880
package com.xmaven;
importorg.apache.dubbo.config.spring.context.annotation.DubboComponentScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@DubboComponentScan
@SpringBootApplication
public class NacosSampleProviderApplication {
public static void main(String[] args) {
SpringApplication.run(NacosSampleProviderApplication.class, args);
} }
服务启动成功之后,访问Nacos控制台,进入"服务管理"————>"服务列表",如下图所示:
我们可以看见所有注册在Nacos上面的服务。
如果在"操作"列点击"详情",我们可以看到IHelloService下所有的服务提供者的实例元数据如下: