2

MochiWeb Web サーバー、いくつかのカスタム Erlang/OTP アプリケーション、および次のいくつかの非ネイティブ コンポーネントで構成される Erlang/OTP システムを構築しています。

  • MochiWeb Web サーバーの状態と永続データ (ユーザー、アカウントなど) の両方を格納する CouchDB データベース
  • 他のいくつかのエンティティ (注文、アカウントなど。クライアントの要件: CouchDB に移行することはできません。データはそのまま使用する必要があります) を格納するためのレガシー PostgreSQL データベース。
  • システムのユーザーに電話通知を提供するアスタリスク サーバー。

高レベルのアップタイムと可用性を実現したいと考えているため、システムの Erlang/OTP 以外の要素を監視する最善の方法を知りたいと考えています。基本的に、システムの各要素を監視、監視し、必要に応じて再起動したいと考えています。Erlang/OTP アプリケーションでは簡単に実現できますが、Erlang 以外のコンポーネントでそれを行う方法がわかりません。


それらを Erlang/OTP アプリケーションとしてラップし、OTP 監視ツリーに含める必要がありますか?

それとも、Erlang/OTP システムの Erlang/OTP 以外のコンポーネントを監視および監督するために、サードパーティのソフトウェア ツールを使用する必要がありますか?

それを行うための最もよく知られている方法は何ですか?

4

1 に答える 1

3

答えはそれ次第です:P

両方の方法が使用されているのを見てきましたが、一方が他方よりも優れているかどうかはよくわかりません. 私の直感では、erlang 内からポートを介してアプリケーションを管理するものを選択します。そうすれば、問題が発生したかどうかを一元的に知ることができ、問題を簡単に修正できます。

于 2013-07-12T10:03:42.373 に答える