NIO服务器(一)之抽象API
本文基于 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 自己实现的 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 过滤器,用于服务提供者中,提供 限流 的功能。 配置方式 ① 通过 配置项,添加到 或 或 中开启,例如: <dubbo:service interface="com.alibaba.dubbo.demo.DemoService" ref="demoServiceImpl" ...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享 TokenFilter 过滤器,用于服务提供者中,提供 令牌验证 的功能。在 《Dubbo 用户指南 —— 令牌验证》 定义如下: 通过令牌验证在注册中心控制权限,以决定要不要下发令牌给消费者,可以防止消费者绕过注册中心访问提供者。 另外通过注册中心可灵活改变授权方式,而不需修改或升级提供者。 官方文...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享异常过滤器 ExceptionFilter ,用于服务提供者中。用途如下: FROM ExceptionFilter 上的注释: 不期望的异常打 ERROR 日志( Provider端 )。不期望的日志即是,没有的接口上声明的Unchecked异常。 异常不在 API 包中,则 Wrap 一层 Runti...
经验 要求:考试时间一共一个半小时。语言用C/C++,编译器不做限制,可用VC++6.0、DevC++和CodeBlocks。建议用CodeBlocks,因为它有代码提示,用起来也很顺手。 1.关于梅森素数。所谓梅森数,是指形如2p-1的一类数,其中指数p是素数,常记为M(p)。如果p是素数的同时,梅森数(即2p-1)也是素数,就称这个梅森数为梅森素数。输入一个长整型数n,输...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享过滤器 DeprecatedFilter ,用于服务消费者中,通过 <dubbo: service /> 或 或 的 “deprecated” 配置项为 true 来开启。 2. DeprecatedFilter com.alibaba.dubbo.rpc.filter.DeprecatedFilt...
本文基于 Dubbo 2.6.1 版本,望知悉。 1. 概述 本文分享过滤器 TimeoutFilter ,用于服务提供者中。 2. TimeoutFilter com.alibaba.dubbo.rpc.filter.TimeoutFilter ,实现 Filter 接口,超时过滤器。如果服务调用超时,记录告警日志,不干涉服务的运行。代码如下: @Activate(group =...