Compojure: лейн-ринг в производстве? - PullRequest
7 голосов
/ 17 октября 2011

Похоже, что люди предлагают использовать lein-ring для простого развертывания приложения Compojure. Разве это не просто для развития? Я протестировал одно и то же приложение, работающее с lein-ring против упакованного leiningen с uberjar (выполняется с помощью java -jar, оно содержит ring-jetty).

К моему удивлению, производительность даже лучше с лейн-рингом! Я что-то упустил?

Как я могу продолжать использовать lein-ring, но избегать распечатки стековых трасс в случае исключений и избегать проверки на наличие модифицированных файлов?

Спасибо

Ответы [ 2 ]

3 голосов
/ 19 апреля 2012

lein-ring позволит вам легко создать файл войны для развертывания в контейнере (и служит основой для lein-beanstalk для легкого развертывания в Amazon Elastic Beanstalk), но я не знаю распространенной практики его использования в производстве. Конечно, вариант, но, вероятно, редко лучший. Я бы рекомендовал выполнить развертывание с использованием методов, рекомендованных вашим хостом / контейнером; чаще всего это будет означать развертывание войны (которую можно использовать для построения lein-ring) или использование некоторого разнообразия развертывания без контейнеров со встроенным экземпляром Jetty (как на Heroku с Leiningen).

Если вы делаете хотите использовать lein-ring в работе, но хотите отключить его возможности времени разработки (перезагрузка кода, рендеринг стека и т. Д.), Вы должны установить переменную среды RING_ENV до production, например:

export RING_ENV=production
lein ring ...
0 голосов
/ 28 октября 2011

lein-ring - это инструмент только для разработки.Конечно, способ упаковки и развертывания приложения будет влиять на производительность.Вы на самом деле сравниваете яблоки с яблоками здесь?

Я обнаружил существенные различия в кольцевом обтекателе и даже в развертывании встроенной пристани.

Как говорится, с lein-ring вы упускаете тонну вещей.Помещение вашего приложения в надлежащий контейнер позволит гораздо больше с точки зрения поддержки работы и контроля.

...