我已经开始使用RoR和S3了,我不清楚资产。
有一个asset_sync gem
https://github.com/AssetSync/asset_sync
有人可以澄清它是什么意思
用于同步Rails和S3之间的资产
另外我看到heroku不建议使用它:https://devcenter.heroku.com/articles/please-do-not-use-asset-sync Heroku建议使用CDN而不是asset_sync。
谢谢!
答案 0 :(得分:1)
您想使用Amazon Cloudfront,而不是S3。 S3用于存储文件,在提供静态资产方面不是很好或不够快。
Cloudfront通过缓存为遍布全球的超高速服务器提供资源。您不需要上传资产。
您所做的是在Cloudfront上设置分发,例如:
https://mycdn.cloudfront.net
然后设置您的发行版以使用您的heroku应用程序作为原始服务器。
所以在第一次请求时:
http://mycdn.cloudfront.net/some_asset.png
Cloudfront会将请求转发给:
http://myapp.heroku.com/some_asset.png
并缓存响应,以便任何后续请求将转到那些超快速的边缘缓存位置。
有一点,Cloudfront只允许S3存储桶作为原始服务器,而不再是这种情况。 asset_sync
是当时的遗物。
今天将资产上传到S3没有任何意义。更少使用asset_sync,这对于heroku的超级流畅资产管道集成来说不会很好。