C产品在市场上有哪些独特优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3736个文字,预计阅读时间需要15分钟。
一、背景介绍:在进行数据存储的过程中,我们通常会加入本地缓存、分布式缓存以及数据库存储三级结构。当我们取值时,通常遵循以下流程:
1. 先取本地缓存,如果值存在则直接返回。
一、背景介绍:
我们在进行数据存储的时候,有时候会加入本地缓存、分布式缓存以及数据库存储三级的结构,当我们取值的时候经常是像下面这样的流程:
1.先取本地缓存,如果值存在直接返回
2.本地缓存不存在,获取分布式缓存,存在直接返回,并更新本地缓存
3.分布式缓存不存在,查询数据库,更新分布式缓存、更新本地缓存,最后返回
但如果对于一些场景,可能只有本地缓存、只有分布式缓存或者说上面三种的几种组合,我们怎么要应对这样的变化,怎么能抽象出一套方式,能够应对各种不同数据存储方式造成的变化。
二、设计思路:
首先我们分析一下上面这个过程的模型,可以抽象出5个方法:
- 1.GetDataFromLocalCache
- 2.GetDataFromDistributeCache
- 3.GetDataFromDB
- 4.SetDataToLocalCache
- 5.SetDataToDistributeCache
其实,不同的场景无非就是这几个方法的组合,只不过里面的内容不同罢了,说到这里我们应该已经有思路了,可以利用委托来实现。
本文共计3736个文字,预计阅读时间需要15分钟。
一、背景介绍:在进行数据存储的过程中,我们通常会加入本地缓存、分布式缓存以及数据库存储三级结构。当我们取值时,通常遵循以下流程:
1. 先取本地缓存,如果值存在则直接返回。
一、背景介绍:
我们在进行数据存储的时候,有时候会加入本地缓存、分布式缓存以及数据库存储三级的结构,当我们取值的时候经常是像下面这样的流程:
1.先取本地缓存,如果值存在直接返回
2.本地缓存不存在,获取分布式缓存,存在直接返回,并更新本地缓存
3.分布式缓存不存在,查询数据库,更新分布式缓存、更新本地缓存,最后返回
但如果对于一些场景,可能只有本地缓存、只有分布式缓存或者说上面三种的几种组合,我们怎么要应对这样的变化,怎么能抽象出一套方式,能够应对各种不同数据存储方式造成的变化。
二、设计思路:
首先我们分析一下上面这个过程的模型,可以抽象出5个方法:
- 1.GetDataFromLocalCache
- 2.GetDataFromDistributeCache
- 3.GetDataFromDB
- 4.SetDataToLocalCache
- 5.SetDataToDistributeCache
其实,不同的场景无非就是这几个方法的组合,只不过里面的内容不同罢了,说到这里我们应该已经有思路了,可以利用委托来实现。

