2016-06-29 5 views
0

私は突然小さな流星jsアプリケーションを持っていますが、100%CPUを使用し始めます。Meteor jsアプリケーションが原因でCPUがスタック100%

meteor add disable-oplog 

が、それは何も変更しなかった:私はそれを使用して無効にしたので、CPUの高使用率を引き起こしてoplog多分言ういくつかのブログを見つけました。私は開発環境( "流星"コマンドでアプリケーションを実行する)と展開環境(mupを使用してアプリを遠隔操作する)でこの問題に直面しています。 開発環境:ubuntu 14.0 2G 64Bit流星1.3ノードjs 0.10.45。

展開環境(ドロップレット):ubuntu 14.0 512Mb 64Bit meteor 1.3 node js 0.10.45。

インストールされているパッケージ:

installed packages

監視プロセス:

enter image description here

答えて

1

私は前にこの問題が発生しますが、1台のサーバー上であまりにも多くの生産流星の開発enviornmentsを実行している場合のみました長過ぎる。

私はその場所に入れたスワップの解決策でした。流星アプリは、多くのメモリを使用することができ、512MBは少なすぎることがあります。奇妙なことにCPUスパイクとして現れたのはいつもスワップしていた。いったん私はより良いスワップの設定を配置し、すべてうまくいた。

これはUbuntuサーバー上にあったため、14か16かどうかを思い出すことはできません。デジタルオーシャンホスティング(デフォルトではスワップが無効になっています。

これはあなたの答えではないかもしれませんが、確かに可能な限り書いていますので、わかりにくいかもしれません。

0

たぶん、あなたは、CPUのリミッターを使用して試すことができ、ここであなたが最初のCPUリミッターをインストールする必要があります私は https://gist.github.com/cortezcristian/5ab4fdddcc573972d44873f1e97a2b88

を作成したbashスクリプトです:その後

sudo apt-get install cpulimit 
ps ax | grep node | grep meteor | grep -v grep | awk '{print $1}' > /tmp/my-app.pid 
cpulimit --p $(cat /tmp/my-app.pid) --limit 77 

あなたは50をしたいの限界を選択することができます/ 100には--limitフラグが設定されています。

+1

デジタル海水滴を512Mbから1Gbにスケールアップしました。また、関数(戻り値と例外)の最適化を行いましたが、今度はもう一度展開して、アプリケーションが100%に達します。それはメテオの性質だと思うが、もはやそこにはまっていない。再度、感謝します – nemrrached

関連する問題