运行 Meteor 单核应用

Running Meteor Application on a Single Core

我正在尝试 运行 远程主机上的 meteor 应用程序。该应用程序在我的桌面上运行,但是当我 运行 它在远程主机上时,流星进程要么被杀死要么冻结。以下是遇到此问题的几个命令:

meteor meteor update meteor restart

每个命令在失败时占用了 cpu 的大约 99%,所以我怀疑 Ubuntu 正在终止进程。我相信升级 CPU 会解决这些问题,但我想在购买任何东西之前征求第二意见。

我运行在具有以下CPU规格的服务器上安装应用程序:

model name : Intel(R) Xeon(R) CPU E5-2630L v2 @ 2.40GHz stepping : 4 microcode : 0x1 cpu MHz : 2399.998 cache size : 15360 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1

此外,运行宁meteor命令时的输出是:

[[[[[ /HELPq ]]]]]
=> Started proxy.
=> Started MongoDB.
Unexpected mongo exit code null. Restarting.

Killedlding for web.browser

最后一行是 Building for web.browser,但被 Killed 输出部分覆盖。

你不应该这样 运行 流星。基本上,当您的 shell 超时时,流星进程将被终止。您需要将其与远程登录分离。

有多种方法可以做到这一点。

第一步是做一个 'meteor build',这将生成一个包,并将其压缩以准备传输到主机

1) Nginx 和 Phusion Passenger 这是我的建议,因为我发现它很容易设置和维护,而且它还负责在多个 Meteor 服务器之间共享一个 IP 地址(就像 Apache 对虚拟主机所做的那样)。他们的网站上有一个出色的向导,可以引导您完成安装和设置 https://www.phusionpassenger.com/library/install/nginx/install/oss/

2) 永远 如果您只有 运行 一台服务器并且需求更简单,forever 就可以了。它对 运行 nodejs 服务器(这就是流星服务器)也很有用。 https://github.com/foreverjs/forever

3) mup 将允许您一步发布到您自己的服务器 https://github.com/kadirahq/meteor-up

4) 银河托管。也许更昂贵,但它再次为您提供了一步发布选项。 https://www.meteor.com/hosting

Galaxy 和 mup 的工作量最少,因为它们非常像一个黑盒子。出现问题时进行故障排除可能会更加困难。我喜欢 nginx 解决方案,因为你有细粒度的控制,而且设置非常简单。