sql缓存缺点?

时间:2010-10-27 12:24:42

标签: mysql caching

我有一个Web服务器,其中包含许多具有许多数据库操作的网站,我尝试使用sql缓存作为提高服务器性能的方法。

一般来说,在公共环境中有没有关于sql缓存的缺点?

由于

3 个答案:

答案 0 :(得分:1)

好吧,缓存消耗RAM内存,所以你需要大量的内存。

我不确定SQL Server使用的缓存机制,但是您的查询可能会在一段时间内返回过时数据。

性能改进的最佳选择是尽可能多地将数据加载到RAM中而不是缓存。

答案 1 :(得分:0)

正常环境中缓存的主要问题是缓存过期和陈旧数据。

如果每次数据更改时缓存都会使缓存失效,那么很可能很少或者永远不会访问缓存。

如果您尝试仅更改已更改的缓存部分,则需要额外的处理时间来确定要使其失效的内容。

如果您没有使缓存无效或拥有缓存计时器,您最终可能会收到陈旧数据。

根据您的环境和要求,您需要选择最符合您需求的解决方案。有时可以获得一些陈旧的数据,而在其他应用程序中却没有。

答案 2 :(得分:0)

以上所有要点均有效。过时缓存条目的失效将是一个关键问题,同时在多个服务器之间同步本地缓存。您可能希望查看网格缓存(例如Hazelcast,mem-cache)和Heimdall Data。 Heimdall充当透明缓存并提供内置的失效逻辑。 总之,sql缓存本身是一件好事。它提高了性能,可以缓冲数据库中的sql流量,从而实现扩展优势。