dubbo学习笔记

dubbo笔记

mvc三层架构:
所有代码仍然在同一台计算机中执行,并发能力有限
RPC: client server
远程调用,让一个项目部署在多个不同的计算机中,提高并发能力,但是此模式的ip+端口号比较分散,有一定的维护难度
dubbo: SOA面向服务架构
在这里插入图片描述

节点角色规范

节点负责启动,加载和运行服务Provider。
Provider提供者公开远程服务
Consumer消费者致电远程服务
Register注册表负责服务发现和配置
Monitor监视器计算服务调用的数量和耗时
Container容器管理服务的生命周期

官方提供的用法:
本地spring配置:

<bean id=“xxxService” class=“com.xxx.XxxServiceImpl” />
<bean id=“xxxAction” class=“com.xxx.XxxAction”>
    <property name=“xxxService” ref=“xxxService” />
</bean>

远程服务的spring配置:

remote-provider.xml:


<!-- define remote service bean the same way as local service bean -->
<bean id=“xxxService” class=“com.xxx.XxxServiceImpl” /> 
<!-- expose the remote service -->
<dubbo:service interface=“com.xxx.XxxService” ref=“xxxService” /> 

remote-consumer.xml:


<!-- reference the remote service -->
<dubbo:reference id=“xxxService” interface=“com.xxx.XxxService” />
<!-- use remote service the same say as local service -->
<bean id=“xxxAction” class=“com.xxx.XxxAction”> 
    <property name=“xxxService” ref=“xxxService” />
</bean>

开发dubbo程序:

一、准备环境

linux中安装注册中心zookeeper
-zookeeper依赖于jdk 需要在linux中安装
1.Oracle官网下载

在这里插入图片描述
2.安装
在这里插入图片描述
安装根目录,通过pwd命令查看

在这里插入图片描述
3.配置环境变量
输入
在这里插入图片描述
在文件最后追加
在这里插入图片描述

4.刷新环境变量
在这里插入图片描述

5.下载zookeeper
在这里插入图片描述
复制到linux中 ,打开当前目录

6.解压zookeeper
在这里插入图片描述
打开解压后的文件夹
在这里插入图片描述
修改选中的文件名,可以直接修改也可以通过linux命令

在这里插入图片描述
7.查看配置文件 vi zoo.conf
Zookeeper的端口号
在这里插入图片描述

8.设置zookeeper存放数据的目录
默认存放目录:
在这里插入图片描述
在zookeeper文件夹中建立data目录
在这里插入图片描述
将dataDir指向新建的data目录

dataDir=/apps/zookeeper-3.4.12/data 

Shift+zz保存
9.启动zookeeper
进入zookeeper中的bin目录
进入zookeeper根目录

启动
在这里插入图片描述
关闭
在这里插入图片描述
查看状态
bin/zkServer.sh Status

二、服务方提供服务

在这里插入图片描述
在这里插入图片描述

Pom.xml
给maven项目内置tomcat

在这里插入图片描述

三、集成spring

在web.xml中开启spring容器
在这里插入图片描述
applicationContext.xml
Zookeeper所在计算机的ip 192.168.2.128 端口号在zoo.conf中查看:2181
在这里插入图片描述
配置spring扫描包
在这里插入图片描述

四、消费方

1.引入各种依赖 pom.xml(与服务方一致,改端口号,并设置客户端自己的gav)
在这里插入图片描述
2.引入springmvc (通过springmvc来访问提供方),在web.xml中配置disparcherServlet
在这里插入图片描述
3.消费方代码
需要调用服务方提供的方法
在这里插入图片描述在这里插入图片描述
添加注解,如果此时用Autowired是在此工程中找StudentServer对象,而此工程中只有接口无实现类,所以要用@Reference
@controller
在这里插入图片描述
4.Springmvc配置文件

在这里插入图片描述在这里插入图片描述
记得要在控制器类上加入@Restcontroller注解 返回json格式
在这里插入图片描述
四、启动服务端和客户端
注意:客户端端口是8882
在这里插入图片描述

  架构图:

在这里插入图片描述
dubbo:项目整合架构图

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值