redisx项目地址:http://git.oschina.net/websterlu/redisxjava
pom.xml中引入redisx依赖:git
<dependencies> <dependency> <groupId>cn.skynethome</groupId> <artifactId>redisx-core</artifactId> <version>1.0.3-SNAPSHOT</version> </dependency>
指定仓库:web
<repositories> <repository> <id>central</id> <name>Central Repository</name> <url>https://oss.sonatype.org/content/groups/public</url> <layout>default</layout> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories>
编写配置文件,配置文件介绍:redis
classpath:properties/redis_cluster.properties redis集群线程池配置性能
classpath:properties/redis_master_salve.properties redis自定义主备,读写分离,配置测试
classpath:properties/redis_sentinel.propertie sentinel模式线程池配置url
classpath:properties/redis_shared_sentinel.properties sentinel多主分片模式线程池配置spa
具体demo可参考,git地址中的redisx-demo..net
这里就是项目中采用哪一种模式这里配置好哪一种模式便可!线程
咱们用主备配置来写一个测试代码,首先配置redis_master_salve.properties配置文件,配置选项以下:
master_server=10.0.1.38:6379 #redis主配置 #slave_server=10.0.1.38:6380,10.0.1.38:6381 redis从配置,可配置多从 slave_server=10.0.1.38:6380 auth=123^xdxd_qew #密码配置,若是没有留空便可。 max_active=100 #最大线程数。 max_idle=20 #最大空闲线程数。 max_wait=3000 #线程最大等待时长。 timeout=100000 #读取超时。 #获取jedis对象的时候,是否检测其可用,若是配置为true, #拿到的jedis对象将是所有可用的,这里测试环境建议配置为true #正式环境为false,因可能对性能有所影响。 test_on_borrow=true
新建类并编写main方法写入以下测试代码:
public static void main(String[] args) { //设置一个对象并序列化存储到redis RedisMasterSlaveUtil.setObject("user",new User("user1","123456")); //获得反序列化的对象 System.out.println(RedisMasterSlaveUtil.getObject("user",User.class).getName()); //删除对象 RedisMasterSlaveUtil.del("user"); System.out.println(RedisMasterSlaveUtil.getObject("user",User.class)); }
运行结果:
read redis config file is classpath: [properties/redis_master_salve.properties] remove properties...key of [properties/redis_master_salve.properties] Trying to add Master-Slaves from params... add Master and Slaves is successfully... Create Master-Slaves jedis pool for {masterName=master, master=10.0.1.38:6379, slaves=[10.0.1.38:6380]} user1 null
你们赶忙写个demo试试redisx吧,相信你会喜欢上它的。