【问题标题】:Store small files in memcache make performance better?在内存缓存中存储小文件可以提高性能?
【发布时间】:2012-02-27 17:54:31
【问题描述】:

我们知道内存比磁盘快。

所以我想知道是否可以将频繁请求的文件如js/css/icons存储到memcache中,并编写一个诸如php的脚本将它们从memcache中获取到浏览器,而不是服务器软件从磁盘读取的正常方式。

我知道执行 php 会产生额外的开销。但与磁盘 I/O 速度较慢相比,后者更好。

【问题讨论】:

  • 根据您的系统配置,您的操作系统可能已预先配置为将此类频繁请求的文件保存在内存中,因此请先使用磁盘 I/O 实用程序进行检查 :)

标签: php memcached


【解决方案1】:

将 memcached 用于经常访问的文件(PHP 源代码和包含、图像文件等)绝对可以提高性能。

两个警告:

  • 你有足够的流量值得吗?

  • 您计划缓存的文件是否会更改(或经常更改)?

但总的来说:当然。加油!

这里有一些不错的链接:

【讨论】:

    【解决方案2】:

    这样做绝对没有意义。

    首先,您的操作系统的文件系统缓存足够好,并且会缓存真正经常被访问的文件

    接下来,这种方法实际上会使您的网站变慢并占用更多带宽。当您自己提供文件时,您的网络服务器通常只会发送 HTTP 标头而不是文件正文。

    另外,你会吃掉大量的 php-workers,这对于高负载服务器来说是非常宝贵且有限的资源。

    最后,过早优化是万恶之源。

    如果您希望快速提供文件,请将它们移至某种 CDN。

    【讨论】:

    • 这是我最近听到的最愚蠢的事情。你的观点都是有效的......但你的平淡、明确的断言是完全错误的。几乎任何问题的答案都是“视情况而定”。这个问题的简短回答是“Memcached”(或 PHP 缓存,或任何数量的其他替代方案)至少值得考虑。”恕我直言...
    • 感谢您的关心。我已经被认为是 memcache,发现它对这种情况毫无用处。
    猜你喜欢
    • 2022-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 2011-07-01
    相关资源
    最近更新 更多