文档章节

Redis Sentinel Plugin For JFinal

Jim_Ai
 Jim_Ai
发布于 2016/07/12 18:52
字数 376
阅读 353
收藏 3

我先在开发本地搭Redis主从服务器,各自在redis.windows.conf中进行配置。

主服务器:192.168.6.88:6379 开启requirepass 服务器密码,masterauth 服务器密码,maxmemory 209715200,maxheap 314572800

从服务器:192.168.6.88:6380 开启requirepass 服务器密码,masterauth 服务器密码,maxmemory 209715200,maxheap 314572800

从服务器比主服务器多一行配置:slaveof 192.168.6.88 6379。

分别启动redis-server redis.windows.conf,启动成功。

可以通过info Replication命令查看一下主从服务连接状态

如果在使用中如下报错信息:BeginForkOperation: system error caught. error code=0x000005af 。是maxmemory和maxheap没有设置的原因。可以在启动参数中加入,也可以如上在配置文件中配置。

好了,接下来该Redis sentinel上场了。先要作成sentinel.conf文件

启动master-sentinel

下面开始对JFinal开始扩展。

1、作成RedisSentinelPlugin。代码见http://www.oschina.net/code/snippet_2621890_57963

2、com.jfinal.plugin.redis.Cache中的JedisPool类型修正为Pool<Jedis>

3、启动时配置插件

			String redisIp = getProperty(ConstantInit.config_redis_ip);
			Integer redisPort = getPropertyToInt(ConstantInit.config_redis_port);
			String redisPassword = getProperty(ConstantInit.config_redis_password);
			Set<HostAndPort> sentinels = new HashSet<HostAndPort>();
			HostAndPort hostAndP = new HostAndPort(redisIp, redisPort);			
			sentinels.add(hostAndP);
			RedisSentinelPlugin redisSentinelPlugin = new RedisSentinelPlugin(ConstantCache.cache_name_redis_system, "mymaster",sentinels,redisPassword);		
			plugins.add(redisSentinelPlugin);

然后开始测试:关闭master。发现slave自动转为master。同时系统依旧可用。启动旧master,旧master成为新master的slave。

至此开发环境中完成,可尝试在生产环境中配置多台slave和多台sentinel。

© 著作权归作者所有

共有 人打赏支持
Jim_Ai
粉丝 3
博文 15
码字总数 7002
作品 0
虹口
部门经理
piaohao/fast-jfinal

fast-jfinal jfinal项目以embed-tomcat或undertow的方式运行,无须打war包,无续部署tomcat 用appassembler-maven-plugin打包,然后运行bin目录中的脚本即可。 具体参见demo项目:fast-jfinal-...

piaohao
07/23
0
0
JAVA 极速WEB+ORM框架 - JFinal

JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、p...

JFinal
2012/03/18
0
496
JFinal极速开发实战教程新鲜出炉~

JFinal极速开发实战教程新鲜出炉~ [持续更新中...] JFinal框架让 IT 工程师发挥更大的潜能,实现更大价值,同时也希望 JFinal 工具力量能帮助正在创业的朋友们提升效率、降低成本从而实现创业...

山东-小木
2015/01/07
0
13
Jfinal Model自动绑定插件更新,支持jar中model的扫描。

https://github.com/b1412/jfinal-ext/tree/master/src/com/jfinal/plugin/tablebind 本次重构了TableNameStyle,并新增了jar包中model的扫描。 DruidPlugin c3p0 = new DruidPlugin("jdbc:m......

绝望的八皮
2012/09/30
0
0
kiplinglee/jfinal-ioc-plugin

jfinal-ioc-plugin JFinal 依赖注入插件 1.在JFinalConfig文件中配置IOC插件 @Overridepublic void configConstant(Constants me) { // 创建controller实现依赖注入me.setControllerFactory......

kiplinglee
04/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

防止快速重复点击的两种思维

防止重复执行的两种思维 场景 下单时,提交按钮,因为网络卡顿或者手快重复点击,导致重复提交订单; 微博,更新个人状态或发表评论时,快速多次点击[发送]按钮,导致相同的信息发送多次. 解决思路 ...

黄威
39分钟前
0
0
在windows环境下使用Virtualbox虚拟Debian系统来运行Docker

标题绕口。 我之前一直使用 Virtualbox 和 homestead 来运行我的 PHP 开发环境。最近决心开始尝试 DevOps,使得开发、部署容器化,来化解人为操作失误和环境不兼容等问题造成的各种损失。就打...

zgldh
40分钟前
0
0
python map()

map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。(利用生成器的原理,并不马上返回值,...

南桥北木
54分钟前
0
0
分享几个 SpringBoot 实用的小技巧

前言 最近分享的一些源码、框架设计的东西。我发现大家热情不是特别高,想想大多数应该还是正儿八经写代码的居多;这次就分享一点接地气的: SpringBoot 使用中的一些小技巧。 算不上多高大上...

Java干货分享
55分钟前
2
0
day123-20181021-英语流利阅读-待学习

这款新字体,比记忆面包还管用 Lala 2018-10-21 1.今日导读 字体能跟学习效果有什么关系?你还别说,来自澳洲的心理学家和设计师们,还真创造了一款号称能够帮助大家记忆信息、增强学习效果的...

飞鱼说编程
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部