# dubbo-java2004q **Repository Path**: andyliu8971/dubbo-java2004q ## Basic Information - **Project Name**: dubbo-java2004q - **Description**: dubbo案例 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-10-16 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Dubbo ## 1. Dubbo直连 ### 1.1 创建父工程 ### 1.2 创建01-dubbo-provider module 服务提供者 + UserService interface + hello(String name) ```java package com.sofwin.service; /** * @PackageName:com.sofwin.service * @author:andyLiu * @DateTime:2020/10/16 10:46 * @Description:[TODO]输入当前模块作用 **/ public interface UserService { void hello(String name); } ``` + UserServiceImpl + 实现hello(String name) ``` package com.sofwin.service.impl;/** * @PackageName:com.sofwin.service.impl * @author:andyLiu * @DateTime:2020/10/16 10:46 * @Description:[TODO]输入当前模块作用 **/ import com.sofwin.service.UserService; /** * @ClassName: UserServiceImpl * @Description: TODO * @Author: andyliu * @Date: 2020/10/16 10:46 * @Version: 1.0 **/ public class UserServiceImpl implements UserService { public void hello(String name) { System.out.println("这是服务提供者provider1,hello:"+name); } } ``` > 创建pom文件 + dubbo依赖 + spring依赖 ```xml dubbo-java2004q org.example 1.0-SNAPSHOT 4.0.0 01-dubbo-provider 2.7.7 5.2.9.RELEASE org.apache.dubbo dubbo ${dubbo.version} org.apache.dubbo dubbo-dependencies-zookeeper ${dubbo.version} pom org.springframework spring-core ${spring-version} org.springframework spring-jcl org.springframework spring-beans ${spring-version} org.springframework spring-context ${spring-version} org.springframework spring-aop ${spring-version} commons-logging commons-logging 1.2 ``` > 测试服务提供 ```java /** * @PackageName:PACKAGE_NAME * @author:andyLiu * @DateTime:2020/10/16 10:55 * @Description:[TODO]输入当前模块作用 **/ import org.springframework.context.support.ClassPathXmlApplicationContext; import java.io.IOException; /** * @ClassName: ProviderMain * @Description: TODO * @Author: andyliu * @Date: 2020/10/16 10:55 * @Version: 1.0 **/ public class ProviderMain { public static void main(String[] args) throws IOException { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); context.start(); System.in.read(); } } ``` ### 1.3 创建01-dubbo-consumer module 服务消费者 + UserService interface + hellow(String name) ``` package com.sofwin.service; /** * @PackageName:com.sofwin.service * @author:andyLiu * @DateTime:2020/10/16 10:46 * @Description:[TODO]输入当前模块作用 **/ public interface UserService { void hello(String name); } ``` + 测试方法 ```xml /** * @PackageName:PACKAGE_NAME * @author:andyLiu * @DateTime:2020/10/16 10:55 * @Description:[TODO]输入当前模块作用 **/ import com.sofwin.service.UserService; import org.springframework.context.support.ClassPathXmlApplicationContext; import java.io.IOException; /** * @ClassName: ProviderMain * @Description: TODO * @Author: andyliu * @Date: 2020/10/16 10:55 * @Version: 1.0 **/ public class ConsumerMain { public static void main(String[] args) throws IOException { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); context.start(); UserService service =(UserService) context.getBean("userService"); service.hello("consumer"); } } ``` ## 2. Dubbo使用注册中心 Dubbo:zookeeper,redis ### 2.1 创建02-dubbo-provider01 第一个需要向注册中心注册的服务 ### 2.2 创建02-dubbo-provider02 第二个向注册中心注册的服务 ### 2.3 创建02-dubbo-consumer 去注册中心订阅UserService服务,每一次调用都调用不同的服务 ### 2.4 dubbo启动Container + 在resources创建META-INFO/spring + spring的配置文件 名字随便 + Dubbo Main.main() ## 3. 搭建监控中心 是dubbo-admin,新版的dubbo-admin使用的是springboot+前后端分离 + 安装node.js环境 安装高版本的Node.js,npm安装 在`D:\电商项目资料\dubbo\dubbo-admin-develop\dubbo-admin-develop\dubbo-admin-ui`去执行npm install + 使用npm对前端进行部署 + 修改监控中心的相关配置