我读了一篇论文,其中使用了“冷缓存”和“热缓存”这两个术语。冷缓存和热缓存概念是什么意思?我参观了,但是我还需要更多。
我读了一篇论文,其中使用了“冷缓存”和“热缓存”这两个术语。冷缓存和热缓存概念是什么意思?我参观了,但是我还需要更多。
Answers:
好吧,简而言之:热缓存很有用,而冷缓存则没有用。实际上,使用冷缓存可能很危险。
您会看到,缓存的全部目的是使经常访问的数据保持可访问性。例如,DNS缓存将在本地存储您最近请求的名称解析结果,并且当再次请求相同的解析度时,其结果已经可用并立即提供,而无需查询更大的,可能的异地名称数据库。换句话说,你的计算机没有问你的互联网服务提供商的域名服务器的IP地址google.com因为你的电脑已经知道了-你的DNS 缓存是温暖的。
但是,如果您从未请求过google的ip,那么它将不在您的缓存中。一冷缓存是不是太陈旧是有用的-因为它包含的数据可能太旧是准确的 -或者它完全是空的,并清空的大量冷。
但是通常空比旧要好-尽管当然这高度依赖于要缓存的数据。空很容易处理,因为它只需要填充-这很容易-但旧的缓存需要纠错。这是开发和维护缓存系统的主要后勤问题- 您如何知道缓存的数据是最新的,如果没有,该怎么办?
我不会回答这些问题中的任何一个-它们都依赖于实现,并且无论如何可能都远远超出了我的能力-但应该理解,所有缓存系统都存在一些固有的错误风险。它与领土。风险可能并不大-通常只是处理时间多了几纳秒的风险。缓存系统将根据缓存设计者已实施的任何故障保险检查请求的数据,如果发现有故障,则例如,缓存系统将查询ISP的DNS以获取Google的IP,一切正常。
该缓存回暖,虽然,较少有冒险。 在温暖的高速缓存的好处保持亲爱的数据接近超过了风险的的冷缓存的缺点或...也许你不应该缓存。
通常,冷缓存是尚未填充的缓存(尚未)。因此,如果您的缓存很冷,则必须使用大概较慢的方法来检索信息。通常是在应用程序启动或查询类型发生重大变化后不久的情况。
相反,温暖的缓存中填充了您最近或经常检索到的信息。
关于ext文件系统和目录结构,这里有一些有关缓存通常如何在Linux的虚拟文件系统(VFS)中工作的信息:http : //www.tldp.org/LDP/tlk/fs/filesystem.html