3

次のことを行う非常に単純な Web サーバーを作成しようとしています。

  1. リクエストを受け取ります。
  2. 小さなファイルで応答します。接続を閉じます。
  3. リクエストデータを処理します。

つまり、応答は要求情報に依存しませんが、要求情報は依然として重要です。データは永続化され、分析に使用されます。

いくつかのイベント ドリブン ネットワーク フレームワークでこれを実行しようとしましたが、それらはすべて、処理コードが戻るまで接続を保持しているようです。通常、サーバーは応答後に何もする必要がないため、これは理にかなっていますが、私の場合、この特定の方法で物事を行う必要はありません。

理想的には、サーバーはリクエストに応答し続ける必要がありますが、リクエスト データはスタックに追加され、スタックは永続化されるにつれて空になります。

1 秒あたり数千のリクエストを処理することを期待しています。イベント駆動型プログラミングは本当に進むべき道ですか、それとも (従来の) スレッドに固執する必要がありますか? この種の作業に適した言語またはフレームワークはどれですか?

ありがとう。

4

2 に答える 2

1

Node.js の使用を検討しましたか? javascript を使用して、http 指向のサーバー プログラムをすばやく簡単に作成できます。その動作はカスタマイズ可能であり、かなりうまくスケーリングすると言われているため、ニーズに非常に適しているようです.

いくつかのチュートリアルを読むことを検討してください。

于 2010-12-16T13:13:56.853 に答える
0

コールバック (または必要に応じてグリーン スレッド) を使用して実際の作業を行うのではなく、要求データを独立したアプリケーションに委任する方がよいことに気付きました。これに関するいくつかの調査では、beanstalkd や RabbitMQ などのキューを使用することがわかりました。

beanstalkd は競合他社よりも軽量で高速に見えるので、おそらくそれに固執します。

于 2010-12-20T18:35:18.837 に答える