本文主要介绍sprinboot集成dubbo服务,实现微服务治理。。。。。其实集成不难,关键是有很多坑,这里简单记录一下相关笔记,以便日后查看。
一、zk+dubbo环境搭建
https://blog.csdn.net/qq_15901351/article/details/86562305
https://blog.csdn.net/zh15732621679/article/details/77102270
二、主要步骤
参考博客:
https://blog.csdn.net/cowbin2012/article/details/85777055
https://blog.csdn.net/qq_35713827/article/details/95071617
springboot2.12+maven+jdk8+zk+dubbo
1、添加dubbo相关依赖
<!--dubbo-springBoot依赖 -->
<dependency>
<groupId>com.alibaba.spring.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
<!-- zkclient客户端 -->
<dependency>
<groupId>com.101tec</groupId>
<artifactId>zkclient</artifactId>
<version>0.10</version>
</dependency>
2、添加properties相关配置
提供者:
#dubbo应用名称
spring.dubbo.application.name=provider
#注册地址 N/A表示直连方式(默认),zookeeper地址及端口号
spring.dubbo.registry.address=N/A
spring.dubbo.registry.address=zookeeper://127.0.0.1:2181
#dubbo协议、端口号
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20881
#启动时检查(check),关闭所有服务的启动时检查
spring.dubbo.consumer.check=false
#超时 默认1000
spring.dubbo.consumer.timeout=10000
#超时后,重试次数
spring.dubbo.consumer.retries=3
消费者:
消费端:
spring.application.name=consumer
spring.dubbo.registry=zookeeper://127.0.0.1:2181
3、编写提供者和消费者
生产者:编写提供的接口,在接口实现类上使用@Service暴露服务
public interface RemoteService {
String getSomeList(String id);
}
import org.springframework.stereotype.Component;
import com.alibaba.dubbo.config.annotation.Service;
import com.crk.webServer.dubbo.RemoteService;
// @Service暴露服务 com.alibaba.dubbo.config.annotation.Service这个包
@Component
@Service(version = "1.0.0",timeout = 10000,interfaceClass = RemoteService.class)
public class RemoteServiceImpl implements RemoteService {
@Override
public String getSomeList(String id) {
// TODO Auto-generated method stub
return "hello,world!===="+id;
}
}
消费者:编写需要调用的接口,使用@Reference引用服务
@Reference(version = "1.0.0")
private RemoteService remoteService;
4、先启动提供者服务,在启动消费者服务,查看dubbo管理后台。
https://blog.csdn.net/chenpeixing361/article/details/88561381