首页
统计
关于
Search
1
Sealos3.0离线部署K8s集群
1,073 阅读
2
类的加载
737 阅读
3
Spring Cloud OAuth2.0
725 阅读
4
SpringBoot自动装配原理
689 阅读
5
集合不安全问题
582 阅读
笔记
Java
多线程
注解和反射
JVM
JUC
设计模式
Mybatis
Spring
SpringMVC
SpringBoot
MyBatis-Plus
Elastic Search
微服务
Dubbo
Zookeeper
SpringCloud
Nacos
Sentinel
数据库
MySQL
Oracle
PostgreSQL
Redis
MongoDB
工作流
Activiti7
Camunda
消息队列
RabbitMQ
前端
HTML5
CSS
CSS3
JavaScript
jQuery
Vue2
Vue3
Linux
容器
Docker
Kubernetes
Python
登录
Search
标签搜索
Java
CSS
mysql
RabbitMQ
JavaScript
Redis
JVM
Mybatis-Plus
Camunda
多线程
CSS3
Python
Spring Cloud
注解和反射
Activiti
工作流
SpringBoot
Mybatis
Spring
html5
蘇阿細
累计撰写
388
篇文章
累计收到
4
条评论
首页
栏目
笔记
Java
多线程
注解和反射
JVM
JUC
设计模式
Mybatis
Spring
SpringMVC
SpringBoot
MyBatis-Plus
Elastic Search
微服务
Dubbo
Zookeeper
SpringCloud
Nacos
Sentinel
数据库
MySQL
Oracle
PostgreSQL
Redis
MongoDB
工作流
Activiti7
Camunda
消息队列
RabbitMQ
前端
HTML5
CSS
CSS3
JavaScript
jQuery
Vue2
Vue3
Linux
容器
Docker
Kubernetes
Python
页面
统计
关于
搜索到
1
篇与
的结果
2020-12-28
服务注册发现
服务注册发现步骤:1、开启zookeeper服务2、提供者导入依赖配置注册中心的地址,服务发现名,要扫描的包在想要注册的服务类上增加(Dubbo包下的)@Service注解3、消费者导入依赖配置注册中心地址,服务名从远程注入服务(Dubbo包下的)@Reference注解1、开启zookeeper服务(以windows环境为例)2、通过maven命令打包dubbo,或者在github下载源码导入idea打包通过cmd命令java -jar dubbo-admin-0.0.1-SNAPSHOT.jar启动dubbo3、服务者Demo导入依赖(服务者和消费者需要的依赖一样)<!--Dubbo--> <dependency> <groupId>org.apache.dubbo</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>2.7.3</version> </dependency> <!--zkClient--> <dependency> <groupId>com.github.sgroschupf</groupId> <artifactId>zkclient</artifactId> <version>0.1</version> </dependency> <!--引入zookeeper--> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>2.12.0</version> </dependency> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-recipes</artifactId> <version>2.12.0</version> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.14</version> <!--排除slf4j-log4j12--> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency>application.yml配置(服务者)server: port: 8088 dubbo: application: name: provider-server registry: address: zookeeper://127.0.0.1:2181 scan: base-packages: com.sw.service Servicepackage com.sw.service; /** * @Author suaxi * @Date 2020/12/27 11:57 */ public interface TicketService { public String getTicket(); } package com.sw.service; import org.apache.dubbo.config.annotation.Service; import org.springframework.stereotype.Component; /** * @Author suaxi * @Date 2020/12/27 11:58 * zookeeper:服务注册与发现 */ @Service //Dubbo @Service注解可以被扫描到,项目一启动,服务就自动注册到注册中心 @Component //使用Dubbo后尽量用Component注解,Spring的Service注解导包时容易搞混 public class TicketServiceImpl implements TicketService{ @Override public String getTicket() { return "获得票一张!"; } } 4、消费者Demo导入pom.xml的依赖与服务者一样application.yml配置(消费者)server: port: 8089 dubbo: application: name: consumer-server registry: address: zookeeper://127.0.0.1:2181Servicepackage com.sw.service; /** * @Author suaxi * @Date 2020/12/27 11:57 */ public interface TicketService { public String getTicket(); } package com.sw.service; import org.apache.dubbo.config.annotation.Reference; import org.springframework.stereotype.Service; /** * @Author suaxi * @Date 2020/12/27 12:07 */ @Service //放到Spring容器中 public class UserService { //想要拿到provider-server的票,需要到注册中心拿 @Reference //引用,pom坐标,可以定义路径相同的接口名 TicketService ticketService; public void buyTicket(){ String ticket = ticketService.getTicket(); System.out.println("在注册中心拿到===>"+ticket); } } Junit测试类package com.sw; import com.sw.service.UserService; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest class ConsumerServerApplicationTests { @Autowired private UserService userService; @Test public void consumerTest() { userService.buyTicket(); } } 5、Dubbo前端管理页面通过localhost:7001可以进入dubbo的管理员页面,账号密码都是root
2020年12月28日
99 阅读
0 评论
0 点赞