Buffer(缓冲)、Cache(缓存)

Buffer

用途:缓冲通常用于临时存储数据,以平衡不同速度的数据传输过程直接的差异。它可以用来解决数据传输速度不匹配的问题。
例如: 当您在观看视频时,视频播放器会缓冲一段时间的视频数据,以便在网络速度慢或不稳定的情况下也能够流畅的播放

用完之后,就清除了

工作原理:缓冲区是一个存储区域,用于暂时保存数据,待数据传输速度对齐后再将数据发送出去。在数据传输过程中,如果数据接收速度较快,数据会被存储在缓冲区中,直到接收方准备好接收为止。

数据处理: 缓冲区通常不会对数据进行处理或修改,它只是临时存储数据的容器。

实例应用:在I/O操作中,磁盘缓冲区用于暂时存储数据,以提高读写性能。

Cache

作用: 缓存用于存储已经 计算过或获取过的数据,以便在后续 访问时能够更快地获取数据,从而提高系统的响应速度。 通常,缓存用于存储经常访问的数据,以便在需要的时候能够快速获取。
例如: 当你在浏览器上访问网页时,浏览器会将一些静态文件(image、css、js 等)缓存在本地,以便下次访问相同的网页时能够更快地加载。

工作原理: 缓存会将经常访问的数据复制到更快 的存储介质中,如内存,以便在后续访问时无需再从原始数据源获取。这样能够减少数据访问时间,提高性能。

数据处理:缓存中的数据通常可以根据需要进行处理,以满足特定的访问要求。例如,可以将数据库查询结果存储在缓存中,以减少数据库访问频率。

实际应用:Web浏览器使用缓存来存储已经访问过的网页,以便下次访问同一网页时能够更快地加载。

总结

用途不同:缓冲主要用于平衡数据传输速度差异,而缓存主要用于提高数据访问速度。

数据处理:缓冲不对数据进行处理,只是暂时存储,而缓存可以对数据进行处理以满足特定需求。

存储介质:缓冲通常用于暂时存储数据,存储在相同或类似的介质上,而缓存通常将数据存储在更快的存储介质中,如内存。

数据类型:缓冲可以用于各种数据类型,包括传输中的数据,而缓存通常用于经常被访问的数据。

buffer:用完之后,就清除了

相关推荐
EndingCoder2 小时前
离线应用开发:Service Worker 与缓存
前端·javascript·缓存·性能优化·electron·前端框架
一只游鱼7 小时前
Redis入门(部署、持久化、缓存问题)
数据库·redis·缓存
@小匠7 小时前
Spring Cache 多租户缓存隔离解决方案实践
java·spring·缓存
Tim_1015 小时前
【算法专题训练】20、LRU 缓存
c++·算法·缓存
Python大数据分析21 小时前
uniapp微信小程序商品列表数据分页+本地缓存+下拉刷新+图片懒加载
缓存·微信小程序·uni-app
童话ing1 天前
Redis常见问题及其处理策略
数据库·redis·缓存
xrkhy1 天前
SpringBoot之缓存(最详细)
spring boot·后端·缓存
focksorCr1 天前
编译缓存工具 sccache 效果对比
c++·缓存·rust
阿里技术1 天前
一次缓存引发的文件系统数据不一致问题排查与深度解析
缓存·故障排查
Qlittleboy1 天前
tp5.0如何配置session保存到文件里,方便删除
缓存·php