2024年3月6日
String 的源码大家应该都能看懂,这里就不一一分析咯,重点讲一下 equals()和 hashcode()方法,然后看一下 String 类常用方法的实现,就当一起温习一下咯。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65……
阅读全文
2024年3月6日
Dubbo Remote 支持多种传输协议,其中之一就是基于 Netty 的远程通信。在 Dubbo Remote 中,基于 Netty 的远程通信是通过 NettyServer 和 NettyClient 两个实现类来完成的。 以下是 Dubbo Remote 中基于 Netty 的远程通信的工作原理: 服务提供方在启动时创建 NettyServer 对象,并绑定到指定的端口上。 服务提供方在 NettyServer 上注册服务处理器,用于处理客户端的请求。 服务消费方在调用服务时创……
阅读全文
2024年3月6日
Dubbo Remote 支持多种传输协议,其中之一就是基于 HTTP 的远程通信。在 Dubbo Remote 中,基于 HTTP 的远程通信是通过 HttpServer 和 HttpClient 两个实现类来完成的。 以下是 Dubbo Remote 中基于 HTTP 的远程通信的工作原理: 服务提供方在启动时创建 HttpServer 对象,并绑定到指定的端口上。 服务提供方在 HttpServer 上注册服务处理器,用于处理客户端的请求。 服务消费方在调用服务时创……
阅读全文
2024年3月6日
Dubbo Remote Transport 是 Dubbo 远程通信的基础组件,它提供了基于各种传输协议的通信能力,如 TCP、HTTP 等。Dubbo Remote Transport 的主要作用是负责建立和维护客户端和服务端之间的连接,并进行数据的发送和接收。 Dubbo Remote Transport 的核心接口是 Transporter,它定义了传输协议需要实现的方法,包括创建服务器、连接客户端和……
阅读全文
2024年3月6日
Exchange组件 Dubbo Remote Exchange 是一个基于 Dubbo 框架的远程通信组件,它提供了一系列的远程通信协议和序列化协议,用于实现微服务之间的通信和数据交换。 Dubbo Remote Exchange 支持多种通信协议,包括 Dubbo 协议、HTTP 协议、WebSocket 协议等,用户可以根据自己的需求选择不同的协议进行通信。同时,Dubbo Remote Exchange 还……
阅读全文
2024年3月6日
dubbo-remoting 模块整体结构设计 服务治理框架 大致可分为 “服务通信” 和 “服务管理” 两部分,前面我们分析了有关注册中心的源码,也就是服务管理,接下来要分析的就是跟服务通信有关的源码,也就是远程通讯模块。该模块中提供了多种客户端和服务端通信的功能,而在对 NIO 框架选型上,dubbo 交由用户选择,它集成了……
阅读全文
2024年3月6日
Buffer 序列化和反序列化 Dubbo 是一个高性能、轻量级的开源 Java RPC 框架,它提供了许多组件来帮助开发者实现分布式服务调用。其中,Dubbo 的远程通信模块使用了 Netty 作为网络通信框架,而 Netty 中的 Buffer 组件则是 Dubbo 远程通信中非常重要的一个部分。 在 Dubbo 中,Buffer 组件主要用于数据的序列化和反序列化。当客户端发送请……
阅读全文
2024年3月6日
Dubbo 的注册中心虽然提供了多种实现,但生产上的事实标准基本上都是 基于 Zookeeper 实现的。这种注册中心的实现方法也是 Dubbo 最为推荐的。为了易于理解 Zookeeper 在 Dubbo 中的应用,我们先简单看一下 zookeeper。 由于 Dubbo 是一个分布式 RPC 开源框架,各服务之间单独部署,往往会出现资源之间数据不一致的问题,比如:某一个服务……
阅读全文
2024年3月6日
注册中心在 Dubbo 中的作用 服务治理框架可以大致分为 服务通信 和 服务管理 两部分,服务管理可以分为服务注册、服务订阅以及服务发现,服务提供者 Provider 会往注册中心注册服务,而消费者 Consumer 会从注册中心中订阅自己关注的服务,并在关注的服务发生变更时 得到注册中心的通知。Provider、Consumer 以及 Registry……
阅读全文
2024年3月6日
Dubbo 是一款高性能、轻量级的开源 Java RPC 框架,它提供了三种集群模式:失败转移、失败重试和负载均衡,以及多种容错策略:失败重试、失败快速失败、降级和熔断等。本文将详细介绍 Dubbo 集群容错的重点和方案。 重点: 集群模式:Dubbo 提供了三种集群模式,分别是失败转移、失败重试和负载均衡。其中,失败转移……
阅读全文