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

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

开发者学堂课程【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%情况下是与数据库不同步,若你需要进行同步处理,则直接

相关文章
|
1月前
|
缓存 NoSQL 数据库
[Redis]——数据一致性,先操作数据库,还是先更新缓存?
[Redis]——数据一致性,先操作数据库,还是先更新缓存?
|
6月前
|
消息中间件 缓存 NoSQL
Redis学习笔记-如何解决缓存和数据库的数据不一致
Redis学习笔记-如何解决缓存和数据库的数据不一致
76 0
|
9月前
|
存储 缓存 数据库连接
数据库写入操作及其优化
数据库写入操作是将数据从应用程序或用户输入插入到数据库中的过程。这包括向数据库中添加新的记录、更新已有记录或删除不再需要的记录。数据库写入操作对于保持数据的最新状态和一致性非常重要。
116 0
|
缓存 JSON NoSQL
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
如何处理缓存跟数据库数据不一致?
|
存储 负载均衡 Ubuntu
17_ 数据库 _ MySQL主从同步配置
17_ 数据库 _ MySQL主从同步配置
313 1
17_ 数据库 _ MySQL主从同步配置
|
消息中间件 存储 canal
到底是先更新数据库还是先更新缓存?
很多小伙伴最近都在问我,在系统中引入缓存后,当向数据库中写入数据时,是先写数据库还是先写缓存呢?先写数据库和先写缓存有什么区别吗?今天,我们就一起来聊聊这个话题。
210 0
到底是先更新数据库还是先更新缓存?
|
缓存 算法 NoSQL
缓存和数据库同步|学习笔记
快速学习缓存和数据库同步
|
消息中间件 缓存 NoSQL
数据库与缓存一致性方案分享
数据库与缓存一致性方案分享
数据库与缓存一致性方案分享
|
消息中间件 canal 缓存
缓存和数据库的数据同步和一致性
首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。
|
SQL Oracle 关系型数据库
超级详细的数据库中的事务机制学习笔记
事务的英文是transaction,从英文中你也能看出来它是进行一次处理的基本单元,要么完全执行,要么都不执行。 事务的特性:ACID……
129 0