Node.js на Heroku: использовать промежуточное ПО для разработки, но статические ресурсы для производства? - PullRequest
5 голосов
/ 10 февраля 2012

Некоторые средние языки, такие как Stylus, предоставляют два способа компиляции: через connect промежуточное ПО или с помощью инструмента CLI.Последний может генерировать статические скомпилированные активы (например, .css файлы).

Поэтому я хочу использовать промежуточное ПО в режиме разработки, но статические активы в работе.Я знаю, что могу использовать app.configure('developmen'...), чтобы попросить express (не) использовать некоторые промежуточные программы в режиме разработки.

В среде IaaS, такой как Amazon EC2, я могу запустить простой сценарий оболочки, чтобы автоматически перекомпилировать все мои ресурсы.Но как насчет PaaS, в частности Heroku?Как я могу сказать, где мой .styl и где должен генерироваться .css?

Ответы [ 2 ]

0 голосов
/ 26 марта 2013

Возможно, вы захотите взглянуть на https://github.com/adunkman/connect-assets.Он кэширует любые встроенные файлы javascript или css (в него встроена поддержка стилуса для стилуса), если вы передадите его build:true.

Вы можете игнорировать снокеты (например, звездочки, включающие систему javascript), если вам это не интересно, хотя мне это нравится.#= require_tree app и вы включаете все файлы js в этот каталог.А в процессе разработки вы получаете отдельные сценарии для простой отладки.

Самым большим недостатком обслуживания напрямую с помощью connect-assets в Heroku является то, что вам нужно использовать git push для Heroku при каждом обновлении клиентского кода, что автоматически вызываетперезапуск.В итоге я вручную создал свои активы (с помощью стилуса и снокетов), а затем загрузил их на S3.Если вам не нужно часто обновлять код клиента, это не такая уж большая проблема.

0 голосов
/ 13 сентября 2012

Вы можете взглянуть на express-cdn , который загрузит ваши ресурсы в S3 при запуске сервера.

Я закончил тем, что зарегистрировался в CloudFlare и обнаружил, что он не такой быстрый, как CloudFront, но его очень легко настроить и он работает лучше, чем обслуживание файлов ресурсов из моего dyno.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...