![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Dubbo
lovesman
这个作者很懒,什么都没留下…
展开
-
Dubbo07——Dubbo服务调用源码解析
请求——服务key——exporterMap.get(key)——exporter——invoker 服务端 客户端 ExchangeServer ExchangeClient 数据交换层 Nettyserver NettyClient 数据传输层原创 2021-03-16 15:07:41 · 215 阅读 · 0 评论 -
Dubbo06——服务引入
@Reference Referencebean: 1、生成一个代理对象,赋值给属性 执行代理对象的a方法: 生成一个invocation对象 (1)获取服务提供者列表; mock——mockclusterInvoker.invoke(invocation) ,路由,负载均衡, 集群容错——failoverclusterInvoker.invoke(invocation) (2)构造nettyclient (3)发送数据invocation 一个DubboInvoker表示一个具体的服务提供者; 从注册中心原创 2021-03-11 14:51:40 · 183 阅读 · 0 评论 -
Dubbo05——服务导出源码解析
入口:ServiceBean.export() (1)读取配置——ServiceBean注解上的一些值,优先级最高 (2)服务注册——服务相关信息——注册中心 (3)启动netty/tomcat (4)监听动态配置 优先级:配置中心————>applicationconfig serviceBean: (1)applicationconfig (2)registries URL:表示一种资源;有利于扩展; 资源:注册中心 zookeeper; 服务:demo: dubbo://ip+port/… 协原创 2021-02-23 15:14:03 · 187 阅读 · 0 评论 -
Dubbo04——Spring与Dubbo整合原理与源码分析
一、Dubbo中properties文件的解析 二、Dubbo中的@Service注解 三、Dubbo中的@Reference注解原创 2021-02-20 14:36:30 · 243 阅读 · 0 评论 -
Dubbo03——Dubbo的可扩展机制SPI源码解析
java的SPI机制理解 举例 mybaits支持多种数据库,比如oracle的jar包和mysql的jar包。直接用jar里面的方法调用数据库。 mybatis如何正确的找到需要调用的jar包。java.sql.drive. 读取classpath目录下的java.sql.dirve文件,获取调用的实现类的方法。 **缺点:**会实例化文件中的所有的类。 Dubbo的SPI机制在java的基础上进行了扩展。 ...原创 2021-02-19 14:17:48 · 218 阅读 · 0 评论 -
Dubbo学习笔记02——Dubbo的基本应用与高级应用
服务提供者 1、先写一个接口; 2、一个或者多个实现类,添加dubbo的@service注解; 区分不同的服务: version groupp @Reference 可以指定version和group,可以找到代理对象,放入spring容器中; 负载均衡策略 随机 轮询 最少活跃调用数:由服务消费者记录调用次数,如果调用次数相同,则随机调用 一致性hash:根据参数算出hash,并映射到服务上; 服务超时 1、消费者发送请求 2、服务端执行业务; 3、服务端返回结果 当服务端和消费端都配置了超时时间,消费端原创 2021-02-17 19:21:05 · 261 阅读 · 0 评论 -
Dubbo学习笔记01——框架介绍
Dubbo简介 高性能、轻量级的开源java服务框架。 RPC框架:是一种通信协议 面向对象编程,远程方法调用,进程A调用进程B的方法。 实现远程调用的方法: httpclient,rest template 远程调用需要传送的数据信息: 1、方法名; 2、方法参数类型和列表; 3、入参 4、类名 可选参数: 5、version Dubbo: 1、数据格式 2、传输方式 netty 传输时还需要进行序列化。 服务提供者: 本地注册,提供服务的具体的实现类。map形式,key是接口,value是实现类。 .原创 2021-02-16 15:11:16 · 223 阅读 · 0 评论