【问题标题】:Caching dynamically generated images in Rails在 Rails 中缓存动态生成的图像
【发布时间】:2011-06-25 19:01:38
【问题描述】:

我正在使用 PhantomJS 在每个请求中一次动态生成 10 个网站的大图像。因此,重要的是我缓存这些图像并检查它们是否被缓存,以便我可以提供它们。我以前从来没有缓存过图片,所以我不知道怎么做。

其他一些信息:

PhantomJS 将图像写入您指定路径的本地文件系统。

我想缓存这些图片,但如果网站已更新,我还需要与更新缓存进行平衡。

我将并行运行这些图像生成过程。

我正在考虑使用 Amazon 的 Elastic MapReduce 来利用 Hadoop 并帮助减轻负载。我以前从未使用过它,所以这里的任何建议将不胜感激。

我对此几乎是一个完全的菜鸟,所以用示例进行深入解释会非常有帮助。

【问题讨论】:

    标签: ruby-on-rails ruby caching hadoop amazon-web-services


    【解决方案1】:

    您的前端网络服务器是什么?由于 PhantomJS 可以在您指定的任何路径将图像写入本地文件系统,因此您应该指定 Web 服务器的文档根目录,以便静态地为它们提供服务。这样一来,Rails 甚至都不必参与。

    【讨论】:

    • 我还没有部署应用程序,所以我不确定我的服务器会是什么。 Web 服务器的“文档根目录”到底是什么意思?您是说如果图像被写入“文档根目录”,那么服务器将首先自动检查该图像是否存在?它会根据文件名进行检查,我不需要自己显式地编写任何程序?
    • @Justin:是的,文档根目录下的所有文件都将由 Web 服务器提供。事实上,许多人将所有静态资产(图像、样式表、javascript 文件)放在那里以提高服务效率。需要进行一些配置才能将应用程序 URL 定向到应用程序,但这通常是必要的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-27
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    相关资源
    最近更新 更多