Mr_*_*zle 5 fallback cdn ruby-on-rails-3 asset-pipeline
在我中,production.rb我设置为:
# Enable serving of images, stylesheets, and JavaScripts from an asset server
config.action_controller.asset_host = "http://myassets.com"
Run Code Online (Sandbox Code Playgroud)
图像,js和样式表可以从我的CDN(资产服务器)正常加载
但是如果有一天该资产服务器出现故障怎么办?并返回404?
因为在资产服务器(CDN)中我已经配置了a pull zone,所以该内容仍然可以从获得/assets/..。
是否有任何后备,或者如何进行后备,所以当我assets server失败或返回错误时,我的应用程序会从/assets/应用程序内部加载资产?
生产.rb
config.action_controller.asset_host = Proc.new { |source, request, asset_path|
if some_condition
"http://myassets.com"
else
asset_path
end
}
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅AssetTagHelper
编辑
我认为这种预防措施不值得为您的应用程序增加额外的负载/添加的请求。如果您正在构建一个带有故障转移服务器的大型应用程序以提供高可用性,那么资产将是您需要通过冗余来适应的另一件事。如果您通过 AWS 或 Rackspace 之类的服务将您的内容托管在云上,我认为您在可用性方面表现良好,并且不应该担心这个问题。这种方法几乎完全否定了缓存资产的好处。
| 归档时间: |
|
| 查看次数: |
825 次 |
| 最近记录: |