2009-09-16 150 views
2

当您将数据从数据库缓存到文件系统上的文件(例如:htdocs/cache/cachefile)时,是否存在明显的速度性能差异,而不是直接从MySQL数据库?缓存问题MySQL或文件系统

非常感谢!

回答

2

这很大程度上取决于您的磁盘IO,数据库大小,数据库配置,数据库链接,数据库优化等等,因此没有明确的答案。

您可能想考虑您的缓存问题memcached。由于您没有提供有关实际问题的信息,所以我怀疑您会得到很好的解决方案来解决您的问题。或者你只是想知道disk-io是否比mysql更快? ;-)

+0

马拉克斯嗨, 是完全相同,只是想知道,如果磁盘比MySQL快, 我会说,世界上没有明显的区别,因为一切都存储在磁盘上,除了DB是一个不同的服务器上.. 我知道memcached,但它不是我的选择,因为我在共享主机上:\ – miron 2009-09-16 14:27:43

+1

然后你得到“它取决于”的答案。例如,如果您有一个从SQL查询生成的复杂数据树,则在磁盘上缓存树可能会快很多,而不是在每个请求上构建树。你也可以缓存生成的HTML片段......但我怀疑一个简单的“SELECT name FROM users WHERE id = 23”会比从磁盘读取ID为23的用户的名字慢......但是......它依靠。 ;-) – Malax 2009-09-16 14:33:32

+0

好的谢谢,得到了:) 这真的很快,我想,我爱的stackoverflow :) – miron 2009-09-16 14:41:16

0

是的。您所描述的是加速Web应用程序的常用方法。

0

明显的加速问题也取决于查询类型和频率。如果这是一天一次的查询,可能不是那么多。如果它是一遍又一遍的查询,那么可能更多。

0

如果你想使用数据库只是为了缓存mysql memory tables可能是一个很好的选择。这应该给你一个sql数据库的好处,而不必使用硬盘。如果你一般不需要sql数据库,memcached是一个很好的解决方案。