0

HTTP サーバーを作成する予定です。

2 つのモジュール (L & P) があり、両方とも実行可能ファイルです。

これらの実行可能ファイル (L) の 1 つが HTTP 要求をリッスンし、すべての HTTP 解析ロジックを持ち、さらに処理を行う他の実行可能ファイル (P) に単純に転送します。接続情報/パラメーターがリスナー L に認識される「P」の数が存在する場合があります。

アイデアは、P の 1 つがクラッシュした場合に他のものを使用できるなどです。さらに、1 つの P を実行して、DB の 1 つのコピーと対話し、他の P を他のレプリカと対話することができます。

ここで、L&P コンボを使用するか、リッスン、recv、リクエストを解析して応答する L のみを使用するかで混乱します。

In case I go for L&P combo there will be some overhead because of request forwarded from L to P and then response from P to L.

  • 毎秒 100,000 ヒットの場合、このオーバーヘッドを無視できますか?
4

1 に答える 1

2

まず第一に、既存のすべての Web サーバーの何が問題になっているのでしょうか? それらのいずれかにモジュールを作成してみませんか?

先に進んで独自のものを作成したい場合 (HTTP 標準を完全にサポートしたい場合は簡単な作業ではありません): HTTP サーバーとモジュール (.so/.dll) を作成します。すべてのモジュール呼び出しを try/catch でラップするだけで、サーバーがクラッシュするのを防ぐことができます。

もう 1 つの方法は、http パーサー ライブラリを作成し、すべての P を完全な Web サーバーにして、それらの前にプロキシ/ロード バランサーを配置することです。このようにして、処理能力が不足した場合に、任意の P を新しいサーバーに移動できます。

于 2011-06-27T08:13:42.363 に答える