2010-10-27 56 views
0

我有一个Web服务器与许多网站与许多数据库操作,我tryng sql缓存作为一种方式来提高我的服务器的性能。sql缓存的劣势?

一般来说,在普通环境中sql缓存有什么缺点吗?

感谢

回答

1

好,缓存占用的RAM内存,所以你需要大量的这一点。

我不确定使用什么缓存机制SQL服务器,但有可能您的查询返回过时的数据一段时间。

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

0

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

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

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

如果您没有使缓存失效或具有缓存计时器,则最终可能会导致数据过时。

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

0

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