1.什么是dubbo
dubbo是一种RPC框架。用于分布式部署(即在不同服务器之间相互传数据)它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现
2.所需要的的技术
一、zookeeper:用于当做注册中心
二、dubbo-admin(服务管理页面):用可视化的界面来观看所提供的服务以及所连接的对象。
三、spring:dubbo底层有用到spring,如配置文件,以及最简易的运行等等。
四、dubbo
3.每个技术应该做什么
一、zookeeper:需要下载安装包,运行服务端和客户端。是运行dubbo-admin必不可少的一部分
二、dubbo-admin:需要在github下载项目并打出jar包的形式运行。访问地址localhost:8080(这个是可以设置的),用户名,密码root
三、spring:配置文件,导入约束,依赖等等
4.最简单的dubbo项目运行
-
运行zookeeper服务端和客户端
-
运行dubbo-admin,进入网站测试是否运行成功
-
编写服务提供者(Provider),主要是配置文件方面
//配置专属名称 <dubbo:application name="provider"></dubbo:application> //配置注册中心地址 <dubbo:registry address="zookeeper://127.0.0.1:2181"/> //配置所用协议 <dubbo:protocol name="dubbo" port="20880"/> //配置所提供的服务 <dubbo:service interface="com.aishizhiyuzhe.service.UserService" ref="userService"></dubbo:service> //将所用的服务实现类依赖 <bean name="userService" class="com.aishizhiyuzhe.service.impl.UserServiceImpl"></bean>
最简易的可先用main方法来代替
public static void main(String[] args) throws IOException { //加载配置文件 ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"dubbo.xml"}); //运行 context.start(); //防止程序执行结束 System.in.read(); }
-
编写服务消费者(Consumer),主要是配置文件方面
//配置专属名称 <dubbo:application name="provider"></dubbo:application> //指定注册中心地址 <dubbo:registry address="zookeeper://127.0.0.1:2181"/> //配置接收服务名 <dubbo:reference interface="com.atguigu.gmall.service.UserService" id="userService"></dubbo:reference>
最简易的可先用main方法来代替
public static void main(String[] args) throws IOException { //加载配置文件 ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[]{"dubbo.xml"}); ... System.in.read(); }