一个简单Table Cache的实现

本文介绍了Table Cache在数据存储中的作用,旨在减轻服务压力和缩短响应时间。核心要点是保证缓存与数据库数据一致性。文章详细阐述了Full Table Cache和Partial Table Cache的实现方式,并通过流程图展示了操作过程。

前言


在数据存储中,比较常见的一种存储形式是以表的形式进行数据的存储。表由一条条的数据记录所构成。当然,我们也会对表内的数据做各种维度的分析或者更新处理等等。而在这些过程中,我们免不了会对这些表做出大量的读写请求操作。当数据的面向用户变得更为繁多的时候,无疑对于实际表的访问压力也将不断地增长。因此有的时候我们要在客户端用户和存储DB表中间做一层中间处理来做缓冲。本文笔者将要谈的是一个简单的缓存处理,Table Cache,意为表缓存。下面笔者来简单聊聊这个Table Cache的概念以及如何实现一个简单的Table Cache来提高系统的性能。

Table Cache的作用


Table Cache的一个直接作用体现在以下两点:

  • 第一点,减轻客户端请求对于后台系统服务的压力
  • 第二点,缩短客户端请求响应的耗时

上述两点,一个是针对服务端角度的,另一个是针对客户端角度的。

Table Cache的核心要点:数据访问的一致性


Table Cache作为表缓存的角色,它最最重要的一点要求是要保证自身缓存数据和实际DB数据的一致性。这里的一致性包括有以下几个情况:

  • Cache有A数据,DB表有A数据。
  • Cache有A数据,DB表暂无A数据,但是过一段时间后,DB表也会同步A数据,此表现为最终一致性的效果。
  • DB清除掉了A数据,Cache也将会清除A数据
  • DB表A数据记录更新了,Cache表也将会更新A数据记录

用一句话来概括上述的4点,客户端从Cache中查询的数据结果和最终查询真实表的数据结果必须保持完全一致。

Table Cache的样例实现


下面我们来聊聊如何实现一个简单

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值