01-互联网项目相关概念


06-dubbo概述
- Dubbo是阿里巴巴公司开源的一个高性能、轻量级的 Java RPC框架(Java RPC(Remote Procedure Call,远程过程调用)框架是一种用于实现分布式系统中跨进程、跨网络调用的技术框架,它允许一个 Java 进程(客户端)像调用本地方法一样调用另一个 Java 进程(服务端)中的方法,屏蔽了网络通信的复杂性(如 Socket 连接、数据序列化、协议解析等),简化了分布式应用的开发)。
- 致力于提高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案
(1)Dubbo架构

async 异步、sync 同步
07-Dubbo快速入门-zookeeper安装
1.下载安装
1.1 环境准备
ZooKeeper服务器是用Java创建的,它运行在JVM之上。需要安装JKD7 或更高版本。
1.2 上传
将下载的ZooKeeper放到/opt/ZooKeeper目录下
#上传zookeeper alt+p
put f:/setup/apache-zookeeper-3.5.6-bin.tar.gz
#打开 opt目录
cd /opt
#创建zooKeeper目录
mkdir zooKeeper
#将zookeeper安装包移动到 /opt/zooKeeper
mv apache-zookeeper-3.5.6-bin.tar.gz /opt/zookeeper/
1.3、解压
将tar包解压到/opt/zookeeper目录下
tar -zxvf apache-ZooKeeper-3.5.6-bin.tar.gz
2.配置启动
1、配置zoo.cfg
进入到conf目录拷贝一个zoo_sample.cfg并完成配置
#进入到conf目录
cd /opt/zooKeeper/apache-zooKeeper-3.5.6-bin/conf/
#拷贝
cp zoo_sample.cfg zoo.cfg
修改zoo.cfg
#打开目录
cd /opt/zooKeeper/
#创建zooKeeper存储目录
mkdir zkdata
#修改zoo.cfg
vim /opt/zooKeeper/apache-zooKeeper-3.5.6-bin/conf/zoo.cfg

修改存储目录:dataDir=/opt/zookeeper/zkdata
2、启动ZooKeeper
cd /opt/zooKeeper/apache-zooKeeper-3.5.6-bin/bin/
#启动
./zkServer.sh start

3、查看ZooKeeper状态
./zkServer.sh status
zookeeper启动成功。standalone代表zk没有搭建集群,现在是单节点

zookeeper没有启动

08-dubbo快速入门-spring和springmvc整合

1、新增UserServiceImpl.java类


09-dubbo快速入门

1、服务提供方(dubbo-service项目)的修改
在"dubbo-service"项目的pom.xml文件中 增加Dubbo 和 zookeeper 依赖

在"dubbo-service"项目的pom.xml文件中增加 war,用来打成war包形式


修改 "dubbo-service"项目中的 UserServiceImpl.java 文件,将 @Service注解更改为 dubbo的

修改 "dubbo-service"项目中的 applicationContext.xml文件

修改 "dubbo-service"项目中的 web.xml文件

2、服务消费者(dubbo-web项目)的修改
去掉 dubbo-web 中对 dubbo-service 的依赖

在"dubbo-web"项目的pom.xml文件中 增加Dubbo 和 zookeeper 依赖

删除"dubbo-web"项目中的 spring 的依赖

在"dubbo-web"项目中的 UserController.java文件中,增加@Reference 远程注入注解

"dubbo-web"项目中的 springmvc.xml文件中增加 dubbo 和 zookeeper的配置

启动 dubbo-web 服务之后,会报 "Address already in use: bind" 错误,是因为 dubbo-service 启动之后也会占用 22222 端口

更改 dubbo-web 的端口 33333

增加 dubbo-interface模块,作为所有服务的公共接口

在 dubbo-web项目中增加 dubbo-interface 的依赖

将 dubbo-service 和 dubbo-web 这二个服务启动起来即可进行访问了
11-dubbo高级特性-dubbo-admin安装

Monitor为dubbo的监控中心,一般为统计服务调用和消费次数的,但Monitor还不过完善,官方没有提供完整的文档。
1、环境安装
dubbo-admin 是一个前后端分离的项目。前端使用vue,后端使用springboot,安装 dubbo-admin 其实就是部署该项目。我们将dubbo-admin安装到开发环境上。要保证开发环境有jdk,maven,nodejs
安装node**(如果当前机器已经安装请忽略)**
因为前端工程是用vue开发的,所以需要安装node.js,node.js中自带了npm,后面我们会通过npm启动

2、下载 Dubbo-Admin
进入github,搜索dubbo-admin
https://github.com/apache/dubbo-admin
下载:

3、把下载的zip包解压到指定文件夹(解压到那个文件夹随意)

4、修改配置文件
解压后我们进入...\dubbo-admin-develop\dubbo-admin-server\src\main\resources目录,找到 application.properties 配置文件 进行配置修改
修改zookeeper地址
# centers in dubbo2.7
admin.registry.address=zookeeper://192.168.149.135:2181
admin.config-center=zookeeper://192.168.149.135:2181
admin.metadata-report.address=zookeeper://192.168.149.135:2181
admin.registry.address 注册中心
admin.config-center 配置中心
admin.metadata-report.address 元数据中心
5、打包项目
在 dubbo-admin-develop 目录执行打包命令
mvn clean package

6、启动后端
切换到目录
dubbo-Admin-develop\dubbo-admin-distribution\target>
执行下面的命令启动 dubbo-admin,dubbo-admin后台由SpringBoot构建。
java -jar .\dubbo-admin-0.1.jar
7、前台后端
dubbo-admin-ui 目录下执行命令
npm run dev

8、访问
浏览器输入。用户名密码都是root
http://localhost:8081/

12-dubbo高级特性-序列化

增加 "dubbo-pojo"项目,并增加 User.java类

在 "dubbo-interface"项目 中增加 dubbo-pojc 的依赖

在 "dubbo-interface"项目 中的 UserService.java类中增加 findUserById方法

在 "dubbo-interface"项目 中的 UserServiceImpl.java类中实现 findUserById方法

在 "dubbo-web"项目的 UserController.java类中增加 find方法

未结束,请期待