正如标题所示,如果我拥有一个基本上是几百个perl脚本和磁盘上的组件的旧的mason webapp,如果我将documentroot作为一个tmpfs,它会不会运行得更快?
我知道梅森做了一些caching,但是关于这是多么的完全没有解释,而且我也认为apache不会在启动时将每个文件加载到内存中。
debian上的apache2,如果相关。
当然这不是一个问题,如果你提供了大量的静态内容,它应该会导致性能的显着提高(数量主要取决于内存的速度和磁盘的慢度)。
如果你这样做,在RAM中同样的内容也没有任何意义。
由于你的内容主要是dynamic的(所有这些perl脚本),所以你的大部分开销来自实例化worker和运行perl解释器,以及perl脚本正在做的事情。 保持perl脚本在内存中只会有所帮助,而linux(我假设你正在使用linux)通常会自行caching这样的东西。
如果您通过参考文档来引入静态内容,则可能会看到加载时间提高了这些资源的networking性能。
Apache绝对不会立即将所有静态内容在启动时自动加载到RAM中,尽pipe它可以configuration为在运行时将其caching在内存中。