专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
OSC开源社区  ·  在RISC-V上构建AI应用 ·  2 天前  
程序员的那些事  ·  年薪154w!又一新兴岗位崛起!这才是程序员 ... ·  2 天前  
程序员的那些事  ·  65 ... ·  2 天前  
程序员的那些事  ·  3·15 ... ·  4 天前  
51好读  ›  专栏  ›  OSC开源社区

nredis-proxy 高性能Redis 服务中间件

OSC开源社区  · 公众号  · 程序员  · 2016-11-13 08:30

正文

#长按上图识别二维码,参与OSC源创会年终盛典#


一、 NRedis-Proxy 介绍


NRedis-Proxy 是一个Redis中间件服务,第一个Java 版本开源Redis中间件,无须修改业务应用程序任何代码与配置,与业务解耦;以Spring为基础开发自定义标签,让它可配置化,使其更加容易上手;以netty 作为通信传输工具,让它具有高性能,高并发,可分布式扩展部署等特点,单片性能损耗约5%左右。


二、 NRedis-Proxy 技术架构图


三、 NRedis-Proxy 优势以及缺点


a)      功能优势

1.        自带连接池,简单稳定且性能高效

2.        支持读写分离,从读按照权重算法

3.        支持灵活主从配置策略

4.        默认支持一致性哈希分片策略,扩展性强

5.        分片策略与从读取策略可自定义化

6.        支持主从自动切换,提供RedisServer监听服务

7.        支持HA 分布式部署,节点可随意扩展

b)     天然缺点

中间件的存在,会自带网络损耗,但是网络带宽足够,可以忽略不计。相比客户端分片等策略,中间件可以解决客户端应用过多,解决M*N 问题,Redis-Server连接数不够,造成机器CPU性能降低;如下图:


四、 NRedis-Proxy 类逻辑调用图



五、 NRedis-Proxy 配置标签


a)      redisProxyNode

序号

名称

描述

1

id

Spring 标签唯一标志

2

redisProxyHost

NRedis-proxy 对外提供主机号

3

redisProxyPort

NRedis-proxy 对外提供端口号

4

algorithm-ref

NRedis-proxy 多主分片实现类引用

5

address

Zookpeer 地址

b)     redisProxyMaster

序号

名称

描述

1

id

Spring 标签唯一标志

2

host

RedisServer主主机名

3

port

RedisServer主端口号

4

timeout

连接超时时间

5

maxActiveConnection

最大活跃连接数

6

maxIdleConnection

最大空闲连接数

7

minConnection

最小连接数

8

algorithm-ref

NRedis-proxy 从分片读取策略类引用

c)      redisProxyCluster

序号

名称

描述

1

id

Spring 标签唯一标志

2

host

RedisServer从主机名

3

port

RedisServer从端口号

4

timeout







请到「今天看啥」查看全文