在生产环?

似乎人们建议使用lein-ring来毫不费力地部署Compojure应用程序。 这不仅仅意味着发展吗? 我测试了lein-ring与uberjar(用java -jar执行,包含环码)与leiningen一起运行的相同应用程序。

令我惊讶的是,lein-ring的表现甚至更好! 我错过了什么吗?

我如何继续使用lein-ring,但是避免在异常情况下打印出堆栈轨迹并避免检查修改过的文件?

谢谢


lein-ring将允许您随时生成一个用于部署到容器的战争文件(并且作为lein-beanstalk的基础,以便轻松部署到Amazon的Elastic Beanstalk),但我不知道在使用它的通常做法中生产。 当然是一种选择,但可能很少是最好的选择。 我建议使用主机/容器推荐的方法进行部署; 这通常意味着部署战争(可以使用lein-ring来构建)或者使用嵌入式Jetty实例的各种无容器部署(就像在Leiningen上的Heroku一样)。

如果你想在生产环境中使用lein-ring,但想关闭其开发时间功能(代码重新加载,堆栈跟踪渲染等),则必须将RING_ENV环境变量设置为production ,例如:

export RING_ENV=production
lein ring ...

lein-ring是一种开发工具。 当然,您打包和部署应用程序的方式会对性能产生影响。 你真的把苹果比作苹果吗?

我发现Lein-ring甚至只是嵌入式码头部署方面的重大差异。

这是说,与lein-ring你错过了很多东西。 将您的应用程序放在适当的容器中可以提供更多的操作支持和可监控性。

链接地址: http://www.djcxy.com/p/9779.html

上一篇: ring in production?

下一篇: PostgreSQL 9.1 using collate in select statements