質問が言ったように: Erlang で開発するときに OTP 設計原則を使用すると、どのような利点がありますか?
コマンドを受信して応答を送信するだけのサーバーを開発しています。
質問が言ったように: Erlang で開発するときに OTP 設計原則を使用すると、どのような利点がありますか?
コマンドを受信して応答を送信するだけのサーバーを開発しています。
OTP は、ジョナスが言ったように、特にフォールト トレラント システム (柔軟性、ライブ アップデートなど) の作成に使用される設計要素と慣用句のセットです。簡単に言えば、これらの環境、またはこれらの環境に成長する可能性のある環境で使用したいということです。なぜなら、Erlang で信頼性が高く安定したシステムを作成するための多くの血と汗と涙が、OTP の動作とアーキテクチャに組み込まれているからです。それらを使用しないと、フォールト トレラントで柔軟なシステムが得られないか、すべての決定を一度に 1 つずつ失敗し、最終的にクローンに相当するものを作成するために再作成することになります。 OTPの。
問題は、いつOTP を使用したくないのかということです。最小限の中断で長時間実行することを目的としたソフトウェアを実行していない場合、OTP は必要ありません。使い慣れた作業を行うフレームワークが既にある場合は、OTP は必要ありません。OTP の設計の背後にある決定を (おそらく難しい方法で) 知りたい場合は、OTP は必要ありません。OTP を学習するためのコスト (そしてそこにはコストがかかります!) が、ソフトウェアのシステム ダウンタイムのコストを超える場合、OTP は必要ありません。
OTP の理由と理由を理解するには、OTP Design Principles User's Guideを参照するのが最善の方法です。理由が直接述べられていない場合は、多くの場合、行間を読んで各コンポーネントの理論的根拠を見つけることができます。
OTPには、フォールトトレラントシステムの優れたデザインパターンがいくつか含まれています。たとえば、gen_serverや監視など、興味深いものがあります。それはあなたがErlangで何をしたいかによります。
たとえば、Webサイトを運営したい場合は、Yawsを使用するのが興味深いかもしれません。また、フォールトトレラントなWebサイトが必要な場合は、監視のためにYawsでOTPを使用している可能性があります。
OTPには、役立つ動作パターンも含まれています。