高性能 redis 监控软件 redis-monitor NRedis-Proxy1.1 final 高性能中间件服务
时间:2017-01-17 21:57 来源:linux.it.net.cn 作者:IT
NRedis-Proxy1.1 final 高性能中间件服务
NRedis-Proxy1.1 final 高性能中间件服务
一、 NRedis-Proxy 介绍
NRedis-Proxy 是一个Redis中间件服务,第一个Java 版本开源Redis中间件,无须修改业务应用程序任何代码与配置,与业务解耦;以Spring为基础开发自定义标签,让它可配置化,使其更加容易上手;提供RedisServer监控以及自动、收到failover等功能;以netty 作为通信传输工具,让它具有高性能,高并发,可分布式扩展部署等特点,单机器单个RedisServer QPS在9千左右。
二、 NRedis-Proxy 架构图
a) 系统架构图
b) 技术架构图
c) 部署架构图
三、 NRedis-Proxy 优势以及缺点
a) 功能优势
-
自带连接池,简单稳定且性能高效
-
支持读写分离,从读按照权重算法
-
支持灵活主从配置策略
-
默认支持一致性哈希分片策略,扩展性强
-
分片策略与从读取策略可自定义化
-
支持主从自动、手动切换,下次应用程序或者机器重启不会受到任何影响
-
支持HA 分布式部署,节点可随意扩展
-
提供redis-monitor小型机器人,监听cpu、jvm、线程、redis 命中率等监控服务 ### 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
algorithm-ref
NRedis-proxy 从分片读取策略类引用
5
config-ref
连接池配置
c) redisProxyCluster
序号
名称
描述
1
id
Spring 标签唯一标志
2
host
RedisServer主主机名
3
port
RedisServer主端口号
4
algorithm-ref
NRedis-proxy 从分片读取策略类引用
5
config-ref
连接池配置
6
weight
权重
d) redisPoolConfig
序号
名称
描述
1
id
Spring 标签唯一标志
2
connectionTimeout
连接超时时间
3
maxActiveConnection
最大活跃连接数
4
maxIdleConnection
最大空闲连接数
5
minConnection
最小连接数
6
maxWaitMillisOnBorrow
取出最大等待时间
7
initialConnection
初始化连接数
8
timeBetweenEvictionRunsMillis
每隔多久检查一次连接池
9
minEvictableIdleTimeMillis
连接池最小生存时间
10
minIdleEntries
最小空闲数
11
testOnBorrow
取出是否检测
12
testOnReturn
归还是否检测
13
testWhileIdle
空闲是否检测
e) 默认两个分片策略
六、 NRedis-Proxy 部署
1. 部署环境要求
-
1.1 JDK 1.7
-
1.2 Redis-Server
-
1.3 Zookpeer3.4.6
2. 调试步骤
-
** 2.1 启动Redis Server 主机器 **
-
** 2.2 启动Redis Server **
-
** 2.3 启动 zookpeer **
-
** 2.4 启动NRedis-Proxy Server **
-
** 2.5 使用Redis 命令行连接NRedis-Proxy **
3. 部署方式
maven执行nredis-proxy-bootstrap ,然后再找到 nredis-proxy-server.sh 文件执行
七、 redis-monitor监控
a) nredis-proxy监控
(责任编辑:IT)
NRedis-Proxy1.1 final 高性能中间件服务NRedis-Proxy1.1 final 高性能中间件服务一、 NRedis-Proxy 介绍NRedis-Proxy 是一个Redis中间件服务,第一个Java 版本开源Redis中间件,无须修改业务应用程序任何代码与配置,与业务解耦;以Spring为基础开发自定义标签,让它可配置化,使其更加容易上手;提供RedisServer监控以及自动、收到failover等功能;以netty 作为通信传输工具,让它具有高性能,高并发,可分布式扩展部署等特点,单机器单个RedisServer QPS在9千左右。 二、 NRedis-Proxy 架构图a) 系统架构图
b) 技术架构图
c) 部署架构图
三、 NRedis-Proxy 优势以及缺点a) 功能优势
四、 NRedis-Proxy 类逻辑调用图
五、 NRedis-Proxy 配置标签a) redisProxyNode
b) redisProxyMaster
c) redisProxyCluster
d) redisPoolConfig
e) 默认两个分片策略
六、 NRedis-Proxy 部署1. 部署环境要求
2. 调试步骤
3. 部署方式maven执行nredis-proxy-bootstrap ,然后再找到 nredis-proxy-server.sh 文件执行 七、 redis-monitor监控a) nredis-proxy监控(责任编辑:IT) |