いくつかの利用可能なhttpサーバーライブラリを調べましたが、探しているものがまだ見つかりません。この一連の要件を最初に持つことはできないと確信しています。
'パイプライン化された'APIを提示するライブラリが必要です。パイプラインは、応答を待たずに一度に複数のHTTP要求をTCPリンクを介して送信できるHTTP機能を説明するために使用されます。ライブラリAPIに同様の機能が必要で、アプリケーションは応答を送信せずにこれらの要求をすべて受信できます(応答しますが、内部レイテンシの影響を減らすために一度に複数の要求を処理する機能が必要です)。
したがって、Webサーバーライブラリは次のフローをサポートする必要があります
1)HTTPクライアントはhttpリクエストを送信します1
2)HTTPクライアントはhttpリクエスト2を送信します...
3)Webサーバーライブラリはリクエスト1を受信し、それをMyWebServerアプリに渡します
4)My Web Server Appはリクエスト1を受信し、それをMySystemにディスパッチします
5)Webサーバーはリクエスト2を受信し、それをMyWebServerアプリに渡します
6)My Web Server Appはリクエスト2を受信し、それをMySystemにディスパッチします
7)My Web Server Appは、My Systemから要求1への応答を受信し、それをWebServerに渡します。
8)WebサーバーはHTTP応答1をHTTPクライアントに送信します
9)My Web Server Appは、My Systemからリクエスト2への応答を受信し、それをWebServerに渡します。
10)WebサーバーはHTTP応答2をHTTPクライアントに送信します
うまくいけば、これは私の要件を示しています。認識すべき2つの重要なポイントがあります。Webサーバーライブラリへの応答は非同期であり、未処理の応答を含む複数のHTTP要求がMyWebServerアプリに渡される場合があります。
追加の要件は次のとおりです
- 既存の「C」アプリケーションに埋め込むことができます
- 小さな足跡; Apacheなどで利用できるすべての機能は必要ありません。
- 効率的; 1秒間に数千のリクエストをサポートする必要があります
- リクエストへの非同期応答を許可します。それらは応答への小さな待ち時間であり、必要な要求スループットを考えると、同期アーキテクチャは私にとっては機能しません。
- 永続的なTCP接続をサポートする
- サーバープッシュコメット接続での使用をサポート
- オープンソース/GPL
- HTTPSのサポート
- Linux、Windows間でポータブル。できればもっと。
私はどんな推薦にも非常に感謝します
よろしくお願いします