Я запускаю приложение rails 3.1 в стеке Heroku Cedar, которое поддерживает конвейер ресурсов. Heroku перечисляет 3 способа для компиляции активов
- Компиляция ресурсов локально.
- Компиляция активов во время компиляции слагов.
- Компиляция ресурсов во время выполнения.
Очевидно, что # 3 плохо сказывается на производительности, и документы Heroku также рекомендуют против этого. Но я не уверен, что лучше между № 1 и № 2.
# 1 требует, чтобы вы запустили rake assets:precompile
и включили вашу папку public/assets
в git. Ваш слаг будет больше, но я предполагаю, что время на развертывание сайта будет меньше. Но больший размер пули означает более медленный запуск приложения, поэтому, возможно, это мойка.
# 2 для развертывания обновлений потребуется больше времени из-за прекомпиляции, выполняемой на стороне Heroku. Тем не менее, у вас будет меньше пули, а управлять / помнить будет меньше.
У меня вопрос - какой вариант (# 1 или # 2) лучше всего подходит для производства и почему?
Пока что это выглядит как вариант № 2, но я хочу убедиться, что я ничего не пропускаю.