重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 250|回复: 0
打印 上一主题 下一主题

存储 Cache 写机制

[复制链接]
跳转到指定楼层
楼主
发表于 2025-9-11 17:51:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. Write-Through(直写式)
  • 工作原理:
    • 在这种写机制下,当处理器向缓存(Cache)写入数据时,缓存会同时将数据写入到后端的存储介质(如磁盘)中。也就是说,数据的写入操作会同步穿透缓存,直接更新到磁盘上,保证缓存和磁盘数据的一致性。
    • 例如,应用程序发起一个数据写入请求,数据先进入缓存,缓存立即执行写入磁盘的操作,只有当磁盘写入成功后,才会告知应用程序写入操作完成。
  • 优点:
    • 数据安全性高,因为数据能及时持久化到磁盘,即使出现系统突然断电、崩溃等意外情况,缓存中的数据丢失也不会影响已经写入磁盘的数据,最大限度地减少了数据丢失的风险。
  • 缺点:
    • 性能相对较差,由于每次写入缓存都要同步等待磁盘写入完成,磁盘 I/O 操作的速度较慢会成为性能瓶颈,尤其在频繁写入小数据块的场景下,会导致整体写入性能的明显下降。

2. Write-Back(回写式)
  • 工作原理:
    • 当处理器向缓存写入数据时,数据仅先存储在缓存中,并不会立即写入磁盘。缓存会在合适的时机,比如缓存已满、达到一定时间间隔或者系统处于空闲状态等情况下,再将缓存中修改过的数据批量写入磁盘。
    • 例如,数据库系统在短时间内有大量的写入操作,数据先在缓存中快速堆积,等到缓存达到设定的阈值,如缓存空间使用了 80%,就会触发将缓存中的数据批量回写到磁盘。
  • 优点:
    • 显著提升写入性能,因为减少了对磁盘频繁的直接写入操作,利用了缓存的高速读写特性,能够快速响应写入请求,尤其适用于写入操作频繁的应用场景,可以有效提高系统的整体运行效率。
  • 缺点:
    • 存在一定的数据丢失风险,如果在缓存中的数据还未回写到磁盘时,系统突然断电或者出现故障,那么缓存中的这些数据就会丢失,可能导致数据不一致的情况出现。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 21:20 , Processed in 0.208347 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表