NIO服务器(六)之Netty4实现
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 在前面的文章,我们已经了解了 dubbo-remoting-api 如何实现 NIO 服务器的抽象 API 层。那么本文来看看,dubbo-remoting-netty4 ,如何将 Netty4 接入实现。 涉及如下类: 类图 友情提示:在当前版本,默认情况下,使用 Netty3 ,如果想配置成 Netty4 ,请参...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 在前面的文章,我们已经了解了 dubbo-remoting-api 如何实现 NIO 服务器的抽象 API 层。那么本文来看看,dubbo-remoting-netty4 ,如何将 Netty4 接入实现。 涉及如下类: 类图 友情提示:在当前版本,默认情况下,使用 Netty3 ,如果想配置成 Netty4 ,请参...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文接 《精尽 Dubbo 源码分析 —— NIO 服务器(四)之 Exchange 层》 一文,分享 dubbo-remoting-api 模块, buffer 包,Buffer 层。 Buffer 在 NIO 框架中,扮演非常重要的角色,基本每个库都提供了自己的 Buffer 实现,例如: Java NIO 的 ...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文接 《精尽 Dubbo 源码分析 —— NIO 服务器(三)之 Telnet 层》 一文,分享 dubbo-remoting-api 模块, exchange 包,信息交换层。 exchange 信息交换层:封装请求响应模式,同步转异步,以 Request, Response 为中心,扩展接口为 Exchanger, E...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文接 《精尽 Dubbo 源码分析 —— NIO 服务器(二)之抽象 API》 一文,分享 dubbo-remoting-api 模块, telnet 包,Telnet 命令。 在 《Dubbo 用户指南 —— Telnet 命令参考手册》 一文中,我们可以看到,Dubbo 支持通过 telnet 命令,用来服务治理。其中...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文接 《精尽 Dubbo 源码分析 —— NIO 服务器(一)之抽象 API》 一文,分享 dubbo-remoting-api 模块, transport 包,网络传输层。 transport 网络传输层:抽象 mina 和 netty 为统一接口,以 Message 为中心,扩展接口为 Channel, Transpo...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 从本小节开始,我们来分享 Dubbo 自己实现的 NIO 服务器,使用在 dubbo:// 和 thrift:// 协议上。 在 NIO 框架的选型上,强大的 Java 社区里有 mina、netty、grizzly 等,甚至 netty 提供了 3.x 和 4.x 的版本。那么该咋办呢? Dubbo 开发团队的选择是: ...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享 dubbo-filter-validation 项目的 ValidationFilter 过滤器,用于服务消费者和提供者中,提供 参数验证 的功能。在 《Dubbo 用户指南 —— 参数验证》 定义如下: 参数验证功能,是基于 JSR303 Bean Validation 实现的,用户只需标识 JSR303 标准的...
一、前言 使用 Spring+Mybatis 操作 Phoenix 和操作其他的关系型数据库(如 Mysql,Oracle)在配置上是基本相同的,下面会分别给出 Spring/Spring Boot 整合步骤,完整代码见本仓库: Spring + Mybatis + Phoenix SpringBoot + Mybatis + Phoenix 二、Spring + Myba...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享 dubbo-filter-cache 项目的 CacheFilter 过滤器,用于服务消费者和提供者中,提供 结果缓存 的功能。在 《Dubbo 用户指南 —— 结果缓存》 定义如下: 结果缓存 ,用于加速热门数据的访问速度,Dubbo 提供声明式缓存,以减少用户加缓存的工作量。 Dubbo 提供了三种实现: ...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享 TpsLimitFilter 过滤器,用于服务提供者中,提供 限流 的功能。 配置方式 ① 通过 配置项,添加到 或 或 中开启,例如: ```plain text plain --- ② 通过 配置项,设置 TPS **周期**。 **注意** 笔者阅读的 Dubbo 版本,目...