私は、Webサーバー用の静的ファイルのコピーを保持するファイルキャッシュサーバーを作成しています。 Webサーバー内のスレッドが静的ファイルを必要とするときはいつでも、キャッシュサーバーへのソケット接続を開き、socket.share()
の結果+必要なファイルの名前を送信します。キャッシュサーバーは、socket.share
の結果を使用してsocket.fromshare
経由でhttpクライアントにアクセスし、静的ファイルの内容を送信します。次に、httpクライアントソケットのコピーとそれに対するスレッドの接続を閉じます。socket.fromshareでソケットファイルハンドルを再利用することはできますか?
socket.close
の代わりにsocket.detach
を使用すると、自動的にパフォーマンスが向上するのでしょうか?
実際には、基礎となるファイルディスクリプタを閉じずに閉じた状態にソケットオブジェクトを置く:
socket.detach
のドキュメントは、これは言います。ファイル記述子が返され、他の目的で再利用できます。
私は新しいソケットがキャッシュサーバによって作成されたときに明示的に何らかの形で返されたファイル記述子を使用する必要がありますか、またはsocket
モジュールは、既存の再利用可能なファイルディスクリプタについて知っていますか?