Erlang で Web アプリケーションを作成していて、データを PostgreSQL に保存したいと考えています。
私のアプリケーションには 2 種類のリソースがあります。1 つは非常に重要ですが、もう 1 つはそれほど重要ではありません。
- 重要なものについては、データの損失は許されません。
- 重要度の低いものについては、システム障害によるデータ損失は問題ありません。
私は最大の効率を得たいと思い、そのようなアイデアを思いつきました: PostgreSQL のゲートウェイを書きます。ゲートウェイは でありgen_server
、ビジネス ロジック (BL) パーツは、リソースを格納するためにゲートウェイと通信できます。
- 重要なリソースを格納するために、BL パーツは格納するリソースをゲートウェイに送信し、メッセージ (成功または失敗) に対してブロックし
receive
、最終的に Web ページでユーザーに応答します。 - 重要度の低いリソースを保存するために、BL パーツはブロックせずにリソースのみをゲートウェイに送信します。リソースを送信した後、BL パーツは Web ページで直接応答します。
ほとんどのリソースはそれほど重要ではないため、このアイデアから私が期待しているのは、リクエストあたりの秒数が少ないことです。しかし、これは良い考えなのだろうか、つまり、本当に期待どおりの結果が得られるのだろうか?
あなたの経験や信頼できる「ウェブ検索結果」に基づいて回答してください。ありがとう。:-)