TsgcWebSocketServer_HTTPAPI › プロパティ › ReadBufferSize
http.sys リクエストキューに対する保留中のオーバーラップ読み取りごとに割り当てられる受信バッファのサイズ (バイト単位)。
property ReadBufferSize: Integer read FReadBufferSize write FReadBufferSize;
16384(16 KB)
各 HttpReceiveHttpRequest / HttpReceiveRequestEntityBody 呼び出しに割り当てられるバッファのサイズを制御します。デフォルトの 16 KB は MSDN HP サンプルに合わせており、HTTP ヘッダーと小さな WebSocket フレームの一般的なケースに適合します。ほとんどのリクエストが大きなヘッダーを持つ場合、または非常に大きな WebSocket フレームをプッシュしてフラグメント化された読み取り回数を減らしたい場合は値を大きくしてください。事前ポストされた受信数が多い場合 (FineTune.OperatingMode=ompHighPerf) で予約メモリのフットプリントを減らしたい場合は値を小さくしてください (事前ポストされた各受信は完了するまで1つのバッファを保持します)。
oServer := TsgcWebSocketServer_HTTPAPI.Create(nil);
oServer.Host := '127.0.0.1';
oServer.Port := 80;
// bump per-read buffer to 32 KB for large WebSocket frames
oServer.ReadBufferSize := 32768;
oServer.Active := true;