缓存和数据库同步|学习笔记

简介: 快速学习缓存和数据库同步

开发者学堂课程【Java面试疑难点串讲2:缓存和数据库同步】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/25


缓存和数据库同步

使用缓存,核心意义在于,为了减少数据库的操作。

缓存与数据库之间内容有一定的差异,所以缓存和数据库一定不可能完全同步。若要求数据库和缓存尽可能保持同步,则前提是:

1、缓存必须是数据库专用的缓存

-在所有的ORMapping设计组件之中都会存在有EHCache缓存组件,这个缓存组件主要是为帮助用户减少数据库的处理操作,但是一般这样的缓存均会有独立的回收算法:LRU、FIFO、软引用、弱引用。这些算法仅保证缓存中不需要的内容及时被清理干净,若一直被使用,则会被一直保留,并且这一操作只能通过明确的代码来释放;

2、缓存必须是在进行分布式或反向代理式的操作时使用

-如,系统里配置多个Tomcat(WEB容器)但是WEB容器需要统一为所有的用户进行服务。为了操作方便可将服务器上的图片或者视频等内容暂时保存到本地服务器上,因为这些数据,可以进行手工的清除,如,Nginx,使用purge模块即可实现。

3、缓存必须采用缓存数据库完成

-memcached、Redis,里面的数据保存的内容往往是不会显示的数据;对于缓存的数据库要保存的内容往往都是高并发的数据信息统计,对于这些信息的统计处理,会结合大数据的开发工具完成,或者在进行集群设计的时候使用这些缓存进行更加方便的协调处理,保存分布式服务器上的公共数据,

如、session

缓存的内容99%情况下是与数据库不同步,若你需要进行同步处理,则直接

相关文章
|
7月前
|
SQL 关系型数据库 MySQL
数据库相关操作
数据库相关操作
|
8月前
|
SQL 缓存 关系型数据库
QxOrm操作数据库
我们在QT应用开发专栏中对数据库操作做了基本的介绍,很多程序员对于数据库的语法并不是很熟悉,我们就需要使用ORM库来弥补该方面的不足
147 0
|
缓存 JSON NoSQL
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
|
存储 负载均衡 Ubuntu
17_ 数据库 _ MySQL主从同步配置
17_ 数据库 _ MySQL主从同步配置
313 1
17_ 数据库 _ MySQL主从同步配置
|
缓存 算法 NoSQL
缓存和数据库同步|学习笔记
快速学习缓存和数据库同步
|
消息中间件 缓存 NoSQL
数据库与缓存一致性方案分享
数据库与缓存一致性方案分享
数据库与缓存一致性方案分享
|
消息中间件 canal 缓存
缓存和数据库的数据同步和一致性
首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。
|
数据库
Mogo数据库的简单操作
Mogo数据库的简单操作
231 0
|
canal 缓存 关系型数据库
高并发先操作数据库,还是先操作缓存?5 个方案告诉你!
在分布式系统中,缓存和数据库同时存在时,如果有写操作的时候,先操作数据库还是先操作缓存呢? 先思考一下,可能会存在哪些问题,再往下看。下面我分几种方案阐述。
高并发先操作数据库,还是先操作缓存?5 个方案告诉你!