2

我有一种情况,我必须查询数据库中的一些数据,这些数据对于所有用户都是相同的并且每天都在变化,所以我想我可以制作一个文件来保存这些数据(每天一次)然后加载它每次用户访问我的网站时从该文件中获取。

现在,我知道当来自数据库的请求很大但我要写入文件的数据是一个简单的 3 位数字时,这是一种常见的做法(缓存),所以我的问题是这应该更快还是它只是一个矫枉过正,我应该坚持数据库查询?

4

1 回答 1

1

如果处理得当,缓存总是更快。

这取决于从文件中存储和检索数据需要多长时间以及对数据库的请求需要多长时间。

如果获取数字的数据库查询需要很长时间,那么缓存可能是一个好主意,因为数据很小。

如果您要在包含大量缓存数据的文件中进行搜索(例如顺序)(似乎并非如此),则需要很长时间。

磁盘 I/O 可能比数据库 I/O 慢(这不太可能,除非它是本地数据库)。

底线 - 基准。

对于您的场景,缓存可能是一个好主意,但如果它对于所有用户来说只有一个 3 位数字,那么我会尝试将其粘贴在 RAM 中而不是文件中。

于 2013-02-13T11:00:12.513 回答