林烟夜暖

阅读JDK、框架源码的总结,微服务、RPC、服务治理实践等

Dubbo 服务暴露总结

Service Export Summary

Dubbo 服务暴露总结 服务提供端配置: <!-- 提供方应用信息,用于计算依赖关系 --> <dubbo:application name="demo-provider"/> <!-- 使用zookeeper注册中心,并使用zkClient客户端,zk根节点为dubbo_test --> <dubbo:registry protocol=...

Dubbo 服务暴露之服务远程暴露——订阅与通知机制

Subscribe/Notify

Dubbo 服务暴露之服务远程暴露——订阅与通知机制 服务远程暴露的总体步骤为 将ref封装为Invoker 将Invoker转换为Exporter 启动Netty服务端 注册服务到Zookeeper 订阅与通知机制 返回新的Exporter实例 在前面几篇文章中已经分析了前四步的过程,下面分析第五步——订阅与通知的过程。总体代码如下(RegistryPro...

Dubbo 服务暴露之服务远程暴露——注册服务到Zookeeper

Register Providers to Zookeeper

Dubbo 服务暴露之服务远程暴露——注册服务到Zookeeper 服务远程暴露的总体步骤为 将ref封装为Invoker 将Invoker转换为Exporter 启动Netty服务端 注册服务到Zookeeper 订阅与通知机制 返回新的Exporter实例 前篇文章中已经分析了前三步的过程,下面分析第四步——注册服务到Zookeeper的过程。总体代码如...

Dubbo 服务暴露之服务远程暴露——创建Exporter与启动Netty服务端

Exporter/Netty Server

Dubbo 服务暴露之服务远程暴露——创建Exporter与启动Netty服务端 服务远程暴露的总体步骤为 将ref封装为Invoker 将Invoker转换为Exporter 启动Netty服务端 注册服务到Zookeeper 订阅与通知机制 返回新的Exporter实例 服务远程暴露的代码为 // 如果配置不是local则暴露为远程服务.(配置为loc...

Dubbo 服务暴露之服务本地暴露

Injvm

Dubbo 服务暴露之服务本地暴露 服务暴露的流程如下图所示: 简单看一下服务暴露的伪代码: /** dubbo 服务暴露伪代码 */ public class DubboProviderServiceExportSimpleCode { private final List<Exporter<?>> exporters = new ArrayLis...

Dubbo 服务暴露之服务暴露前的准备——ServiceBean的装配(基于dubbo 2.5.8)

ServiceBean/ServiceConfig

Dubbo 服务暴露之服务暴露前的准备——ServiceBean的装配(基于dubbo 2.5.8) Dubbo的服务暴露流程以Dubbo源码中提供的dubbo-demo-provider为例来分析,以下是dubbo-demo-provider的xml配置: <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

Dubbo 服务暴露之Netty3使用实例

Netty Server/Client

Dubbo 服务暴露之Netty3使用实例 由于Dubbo默认使用的是netty3进行通信的,这里简单的列出一个netty3通信的例子,客户端与服务端之间发送字符串消息。 Server端 Server引导类 ServerHandler服务端逻辑处理器 Client端 Client引导类 Clie...

Dubbo 服务引用之构建客户端源码解析

消费者初始化全过程解析

Dubbo 服务引用之构建客户端源码解析 准备工作: 启动一个提供者provider: dubbo://172.16.132.166:20881/com.alibaba.dubbo.demo.DemoService?anyhost=true&application=demo-provider&cellinvokemode=sharing&dubbo=2.0.0&...

Dubbo 服务引用之构建客户端总体流程

ReferenceBean/ReferenceConfig

Dubbo 服务引用之构建客户端总体流程 一、示例 1.配置文件 <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xmlns="http://www.springfram...

ExecutorCompletionService源码分析

ExecutorCompletionService

ExecutorCompletionService源码分析 CompletionService将新异步任务的提交与已完成任务结果的使用分离开来,生产者提交新任务,消费者按照任务完成的顺序取出这些任务并使用其结果。ExecutorCompletionService实现了这个CompletionService接口,并使用给定的Executor执行任务,在任务完成之后,将会把这些任务(Futur...