初识缓存分片框架Redic

点击Redic进入我们的项目主页,获得更多信息和内容。

缓存分片

Redic是什么?

Redic是一个简单易用的Redis缓存客户端,与Spring无缝结合,简单导入Spring环境或者配置Redic Bean即可使用,并且支持读写分离和分片。

什么时候需要Redic?

Jedis实现的ShardedJedisPool是基于一致性hash实现的,当某个节点出现问题时,缓存操作会自动漂移到这个节点后面的节点,这些操作都不是透明的,如果线上出现了问题,定位问题比较困难,Redic采用简单的哈希取模来路由分片数据,实现简单、性能高并且容易定位问题。因此,当你需要一个简单有效的缓存分片框架的时候,用Redic没错的。

如何使用Redic?

1. 配置

单节点开发配置、多节点线上配置、多节点读写分离线上配置参考如下。

1). 单节点开发配置

  • 导入开发测试使用的Spring环境。 <import resource="classpath:spring/application-context-redic-dev.xml"/>
  • 配置单节点属性 redic.cache.node.conn1=localhost:6379

2). 多节点线上配置

  • 在Spring环境中配置多节点的Redic Bean。 <bean id="redic" class="com.robert.redis.redic.Redic" init-method="init"> <property name="nodeConnStrs"> <list> <value>${redic.cache.node.conn1}</value> <value>${redic.cache.node.conn2}</value> </list> </property> </bean>
  • 配置单节点属性 redic.cache.node.conn1=localhost:6379 redic.cache.node.conn2=ip:6379

3). 多节点读写分离线上配置

  • 在Spring环境中配置多节点的Redic Bean。 <bean id="redic" class="com.robert.redis.redic.Redic" init-method="init"> <property name="readWriteSeparate" value=${redic.cache.readWriteSeparate}> <property name="nodeConnStrs"> <list> <value>${redic.cache.node.conn1}</value> <value>${redic.cache.node.conn2}</value> </list> </property> </bean>
  • 配置单节点属性 redic.cache.readWriteSeparate=true redic.cache.node.conn1=localhost:6379,localhost:6380 redic.cache.node.conn2=ip:6379,ip:6380

2. 使用

Redic redic = (Redic) applicationContext.getBean("redic");   
redic.set("name", "robert");
AssertJUnit.assertEquals("robert", redic.get("name"));

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

Service Bus for Windows server

Microsoft最近公开发布了Service Bus 1.0,该Service Bus可以免费地使用于具有适当license的Windows服务器上,这使得W...

17810
来自专栏后端技术探索

Nginx 负载均衡实现解读

负载均衡在服务端开发中算是一个比较重要的特性。因为Nginx除了作为常规的Web服务器外,还会被大规模的用于反向代理前端,因为Nginx的异步框架可以处理很大的...

993
来自专栏企鹅号快讯

离线网络环境下一键式部署

关键词 封闭网络:一个相对封闭的网络环境,仅可以使用有限的资源如:maven镜像仓库、Centos/Ubuntu源等,无法连接互联网的网络环境。 一键部署:这里...

1707
来自专栏搜云库

Spring Cloud(三)服务提供者 Eureka + 服务消费者(rest + Ribbon)

Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。它是一个基于HTTP和TCP的客户端负载均衡器。它可以通...

1899
来自专栏数据库新发现

Oracle云数据库初体验 之一 - 申请与介绍

关于Oracle云数据库(Oracle Cloud Database)的一些体验和分享,也可以参考以下链接:

1843
来自专栏osc同步分享

SpringBoot JMS(ActiveMQ) 使用实践

ActiveMQ 1. 下载windows办的activeMQ后,在以下目录可以启动: ? 2. 启动后会有以下提示 ? 3. 所以我们可以通过http://l...

3427
来自专栏瞎说开发那些事

[微服务系列] 服务治理--Eureka

1736
来自专栏纯洁的微笑

Eureka 虽然闭源了,但注册中心还有更多选择:Consul 使用详解

在上个月我们知道 Eureka 2.0 闭源了,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka 1.X 系列,另一方面

1743
来自专栏腾讯云容器服务团队的专栏

腾讯云容器网络 vpc 对比 vxlan 性能测试

为了弄清楚这两种网络方案下, 容器网络的性能情况,笔者设计并执行了一个简单的对比测试, 对比了吞吐量和时延。

5571
来自专栏SDNLAB

安装 CORD 之前需要了解的术语

CORD(Central Office Re-Architected as a Data Center)是ONF组织推动的开源的边缘计算的项目。 ? CORD ...

3436

扫码关注云+社区