相关改动
基于OKHttp3组件开发通用化的Http通信类
引入maven包
编写请求逻辑
http访问工具
tips:关注下注解
该功能基于http协议
业务场景概述
借助Mybatis的PageHelper插件
Dubbo核心架构图
1、两大核心配置文件
2、注:引入alibaba包不是apache包,不要引错
另一个服务要引入其他服务提供的方法步骤如下:
1、引入依赖:引入服务发布者所在的api
2、引入dubbo服务:spring-dubbo.xml配置待调用的服务接口
dubboTwo需要调用dubboOne服务
①dubboOne代码逻辑进行开发
②dubboOne代码clean -> install 将包打入公共仓库中,一般企业中打入企业的私服中
③dubboTwo的pom文件引入maven包
④配置文件引入dubboOne服务类相关信息
服务调用两大协议:
RPC协议/Dubbo协议:同构项目(使用同种语言创建的项目或者是同一种语言的框架)~犹如本地调用一般
Http协议的Rest Api:通用项目(可以使不同语言去编写的api接口)~通用解析
import org.springframework.stereotype.Service;
@Service最好还是用spring的 因为dubbo的Service只做服务暴露 但是却不能被引用 比如controller层
扫 额外的xml
注册不上zookeeper 找了好就没找到原因 一晚上
https://blog.csdn.net/qq_39597203/article/details/86065353
@EnableDubbo 管用了
<?xml version="1.0" encoding="UTF8"?>
ml version="1.0" encoding="UTF-8"?>
没有中间的-
3个文件都改
log4j:ERROR setFile(
null
,
true
) call failed.
java.io.FileNotFoundException: \_debug.log (拒绝访问。)
也遇到类似错误 把我本地c盘都改秃噜皮了 也不行
最后改了这里
#log4j.appender.info.File=${LOG_PATH}/${LOG_FILE}_info.log log4j.appender.info.File=C:\\Logs\\mooc\\debug.log
四个级别都改 就不警告了
rcp:远程过程调用
dubbo是一个RCP框架
dubbo的过程是 生产者去注册中心注册服务,消费者去注册中心 订阅调用服务。这些都会被监控器记录,监控器可统计
dubbo的核心功能,服务的注册 (发布)-- 调用(订阅)
spring-dubbo.xml:
注解发布的dubbo服务所在包
配置支持的两种调用方式对应的协议
消费服务配置
dubbo.properties
配置两大协议对应的端口等信息
同构项目犹如本地调用
RPC协议或者称之为DUBBO协议用于同构项目(同构项目:项目整体技术相似比如以springboot为主打的项目都可以使用dubbo协议),HTTP协议的Rest Api的调用走json序列化我们使用通用性项目例如java开发的接口PHP需要调用适用于跟外包对接的,
多模块项目结构
duboo整体架构
课程扩展
采用SpringBoot2.x整合Dubbo
1、调整SpringBootServiceInitializer所在的包
2、调整一些不同于1.x版本参数配置
3、SpringBoot2.X相关变动的日志记录
课程总结
1、知晓并掌握Dubbo内部核心框架组件
2、基于SpringBoot发布Dubbo服务、注册服务以及订阅调用服务。
3、基于SpringBoot整合Dubbo和Zookeeper实战实际的业务场景
两大协议介绍: