【问题标题】:Is Mojolicious's "morbo" good for production?Mojolicious “morbo”对生产有好处吗?
【发布时间】:2013-04-21 15:46:31
【问题描述】:

Mojolicious 的 morbo(开发 Web 服务器)是否足以用于生产?另外,morbo 是否足以处理许多 http 请求?

或者,我必须在生产环境中使用 Apache 的 mod_perl 而不是 morbo 吗?

【问题讨论】:

  • 你可以看看“Starman”和“Nginx”的结合,好像这是最近项目中经常使用的设置。
  • 先发制人的重新投票。还有@BorisDäppen for mojo,你可能想试试 hypnotoad+nginx

标签: perl mojolicious


【解决方案1】:

morbo 是 Mojolicious 自带的开发服务器,它的主要特点是在源文件发生变化时重新加载应用程序。生产服务器是hypnotoad,建议*nix 服务器使用(即使是高负载)。如果你没有使用 *nix,那么应该使用基本的daemon,它是运行morbohypnotoad 的底层服务器。在这里阅读更多:http://mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#DEPLOYMENT

如果您愿意,您可以在 Nginx 或 Apache 反向代理后面部署,代理到 hypnotoad 或守护进程。

Mojolicious 应用可以使用诸如 Starman 之类的 PSGI 服务器或在 mod_perl 甚至 CGI 环境下部署,但它们将无法利用 Mojolicious 特别有用的几个实时功能,例如 websockets。

TL;DR,为您的生产服务器使用 hypnotoaddaemon

【讨论】:

  • 刚刚尝试过 hypnotoad,但不幸的是 hypnotoad 不适用于 Windows。但我接受这个答案,因为你提到了mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#DEPLOYMENT ^^ 谢谢
  • 请记住,daemon 只是 morbo 的非开发版本,或者实际上 morbo 只是具有自动重启功能的守护进程。既然你是对的,hypnotoad 不能在 Windows 上工作,如果你正在考虑使用 morbo 部署,只需使用守护进程。享受:-)
  • 是的,我使用 CGI(与 Apache)只是为了开发目的。但现在我正在考虑部署
【解决方案2】:

我确实推荐 starman 用于生产中的 mojolicious 应用程序。

http://metacpan.org/pod/Starman

【讨论】:

  • 实时 mojolicious 功能在使用 PSGI 服务器时将不起作用。这意味着诸如非阻塞请求和 websocket 之类的东西将不起作用。
猜你喜欢
  • 2012-10-16
  • 1970-01-01
  • 2013-10-14
  • 2013-08-28
  • 2015-08-28
  • 2011-07-14
  • 2015-11-08
  • 2017-12-23
  • 2017-01-07
相关资源
最近更新 更多