Подтвердить что ты не робот

Автоматическое развертывание актива Rails 3 на Amazon CloudFront?

Есть ли в Rails 3.1 камень или метод, который может автоматически загружать активы в облако облаков амазонки и использовать их вместо того, чтобы обслуживать локально размещенные? Я думаю, что легко загрузить скомпилированные активы вручную, а затем измените конфигурацию приложения rails для использования этого ресурса, но когда объект будет изменен, загрузка в облачный фронт потребуется снова выполнить вручную. Какие-нибудь хорошие пути для этого?

4b9b3361

Ответ 1

Определенно проверьте asset_sync на github. Или в нашей статье Heroku dev center на Использование ресурса CDN Host с Rails 3.1 на Heroku.

Существует довольно большое улучшение производительности при использовании asset_sync по сравнению с обычным происхождением CDN, позволяя вашему приложению лениво компилировать активы в производстве или обслуживать их, предварительно скомпилированные непосредственно с серверов приложений. Однако я бы так сказал. Я написал это.

  • С активами_sync и S3 вы можете предварительно скомпилировать активы, означающие, что все активы готовы к немедленному обслуживанию на хосте /CDN актива.
  • Вам может потребоваться только пакет : активы в приложении .rb для прекомпиляции, сохранение памяти в процессе производства
  • Серверы приложений НИКОГДА не попадают на запросы актива. Знаете, вы можете потратить дорогое время на вычисление. Вычислительный.
  • Наилучшая практика HTTP-заголовки кэша установлены по умолчанию.
  • Вы можете включить автоматическое сжатие gzip с помощью одной дополнительной конфигурации

Ответ 2

Если вы используете опцию "Пользовательское происхождение" Cloudfronts, вам не нужно ничего загружать, Cloudfront будет извлекать активы с вашего сервера, когда это необходимо. Подробнее о настройке см. Ниже:

http://blog.ertesvag.no/post/10720082458

Ответ 3

Взгляните на https://github.com/rumblelabs/asset_sync - мы используем его только для S3, но я думаю, что часть CloudFront довольно проста, когда активы находятся на S3.

В конечном итоге это задача грабли, которую вы просто добавляете для выполнения в процессе развертывания.

Ответ 4

другой вариант будет https://github.com/moocode/asset_id, в файле readme есть пример использования его с облачным облаком. Он должен работать с рельсами 3.1, но я использовал его только на 3.0.x.

Ss John сказал, что все решения в конечном итоге будут задачей rake + немного логики для изменения пути активов в рельсах.