我的应用程序 - cloudlist(cloudli.st) - 使用Heroku,rails 3.2和一堆宝石。在过去的几天里,我们已经开始在部署后几个小时看到我们的布局中断。
奇怪的是,文件的内容在不同的请求上随机切换。我们使用rails资产管道和所有默认值,没有任何改变。在部署之后一切都很好。经过一段时间(通常是几个小时)后,某些区域的布局开始出现问题。有时只有一个图像具有不同的内容,有时甚至JS或CSS文件具有不同的内容。我们还看到了完全混淆的文件。这一切都很奇怪,我在网上找不到任何东西。
为了说明问题,请参阅以下具有错误内容的精灵的图像。
另请参阅文件frame.png的内容。它应该显示瓷砖的框架,但有时它会显示奖项提名徽章。
有没有人见过类似的东西,或者你知道如何解决这个问题吗?
如果这种情况继续下去,我们需要从Heroku迁移并使用其他基础设施。
答案 0 :(得分:1)
根据heroku(https://devcenter.heroku.com/articles/rack-cache-memcached-rails31)给出的建议,结果如下。
简而言之:它没有帮助。
长版:
我不使用memcached进行缓存。我都不使用片段或动作缓存。至少我在我的应用程序中根本不使用缓存。
缓存的唯一内容是配置参数
完成的事情config.action_controller.perform_caching = false
在生产环境中。
我浏览了文章并检查了每个参数。我唯一不同的是 config.serve_static_assets ,其中 false 。我将其设置为true,重新部署(启用缓存)并在几个小时后得到相同的问题。
我不知道出了什么问题,但由于我的文件中的内容与预期不符,我必须得出结论,这是您基础架构中的内容。例如。我请求 application-(any-digest).css ,我得到精灵 - (任意摘要).png 或应用程序 - (任意摘要).js 强>