ruby-on-rails - 缓存动态图像 rails

标签 ruby-on-rails ruby caching amazon-s3

在我的网络应用程序中,每个用户都将拥有一张个人资料图片,这些图片存储在 Amazon s3 中。如果用户登录,我需要显示该图像,并且该图像将保留在他输入的所有页面的侧栏中。一旦他登录,我是否可以缓存图像,这样我就不需要每次都从 Amazon s3 返回?当他再次更新图像时,我需要清除缓存。

最佳答案

您可以使用标准 Http Caching为此。

您应该设置 Cache-Control和/或 expires标题取决于您的需要。

所有主要的 S3 客户端都支持设置这些 header ,或者您可以使用 S3 API 或 SDK/库等进行设置。

如果图像发生变化,为了重新下载图像,您可以在 url 中添加一个查询字符串。 例如

http://mypath/myfile.ext?v=1
http://mypath/myfile.ext?v=2

关于ruby-on-rails - 缓存动态图像 rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5081790/

相关文章:

ruby-on-rails - 从Rails控制台删除多个记录

ruby-on-rails - 使用 Active Record exists 有什么区别?与 find_by 相比?

ruby-on-rails - minitest 测试和代码覆盖率

ruby-on-rails - 未初始化的常量 ApplicationRecord

css - 使用 redcarpet 在 jekyll 中突出显示语法

caching - Solr 的缓存是在 JVM 的堆内存中还是在堆外(直接)内存中创建的?

ruby-on-rails - 如何在rails中的集合中的集合中查找对象的实例

ruby-on-rails - Searchkick,仅搜索特定ID

caching - 什么情况下浏览器会缓存<video>文件?

mysql - 即使在启用低级别缓存后,查询仍然在 Rails 应用程序的 mysql 服务器中记录为慢查询