2017-01-26 4 views
2

比較的負荷の高いWebアプリケーションにCheyenneを使用しています。それはすばらしい、そして速く働く。しかし、私はUbuntu 14.04へのアップグレード後に表示される問題がありました。または、負荷が増えたので気づき始めました。LinuxでのRebol 2プロセスが "重い負荷の日"後にSIGTERMで停止する

作業の数日後、Rebolワーカープロセスを終了すると、プロセスは100%CPUを消費し始め、「何もしません」。私はstraceでプロセスを見て、それが100 CPUに入っているときは、OSを決して呼び出さない。 Cheyenneワーカーコードを見て(そこに何らかの障害がある場合)、コードはRebolコマンドのOKを実行します出口。このコマンドは、永久にループします。 sigtermでプロセスを終了しようとすると同じです。

私はsigkillでそれを殺すことができます。このプロセスは、重い負荷の数日後にのみこの状態になり、非本番環境またはローカルコンピュータではレプリケートできませんでした。

私の素朴な考えは、終了する前にメモリをクリアしようとしている間、または開いているファイル/ソケットが永久にループすることです。私はlsof(と同様のもの)で前後のプロセスを見ましたが、イベントは簡単に再現できないので、何かが考えられませんでした。

私の質問は、Rebol2が終了時に永遠の100%ループに入るのを見た人はいますか?誰もこれを解決するための任意のアイデアを持っていますか?

+0

**私は恐れがありますが、ここに行くのは有益なコメントにはなりません**私はまた、CheyenneをUbuntu 14.04で使用します(正確には14.04.5 LTS(GNU/Linux 3.13.0-92- Ubuntu 16.04とMac OSX 10.9上でDittoを実行することはありませんでしたが、これは一度も負荷がかかりませんでしたが、長時間実行されています(場合によっては再起動なしで6〜9ヶ月)。 – draegtun

答えて

2

私は、100%cpuが応答していない、おそらく非常に長いファイル(応答のデータの多く)を提供した後、私たちの生産のシャイアンサーバでこれを見ました... 、100%のCPUプロセスを長時間停止させてしまうモニターを書き終えること。

https://github.com/Softinnov/bearded-monitor

あなたはドッキングウィンドウコンテナ

https://hub.docker.com/r/softinnov/bearded-monitor/

でそれを使用することができ、それがお役に立てば幸いです。

関連する問題