TsgcWebSocketProxyServer › プロパティ › Extensions
ダウンストリームレグのメッセージごとのデフレート圧縮などの WebSocket プロトコル拡張を設定します。
property Extensions: TsgcWSExtensions read GetExtensions write SetExtensions;
PerMessage_Deflate.Enabled=False
Extensions.PerMessage_Deflate.Enabled を有効にすると、RFC 7692 で定義された permessage-deflate 圧縮拡張をダウンストリームクライアントにアドバタイズしてネゴシエートします。接続クライアントがサポートをアドバタイズしない場合、メッセージは自動的に非圧縮で交換されるため、相互運用性のリスクはありません。圧縮は CPU 時間を犠牲にして帯域幅を削減します。サブプロパティ (ServerNoContextTakeOver、ClientNoContextTakeOver、ServerMaxWindowBits、ClientMaxWindowBits、MemLevel) を調整してメモリと圧縮率のトレードオフを設定してください。ここでネゴシエートされた拡張はダウンストリームレッグにのみ適用されます。Proxy で設定されたサーバーへのアップストリームリンクは独立した WebSocket セッションです。
oProxy := TsgcWebSocketProxyServer.Create(nil);
oProxy.Extensions.PerMessage_Deflate.Enabled := true;
oProxy.Proxy.Host := 'upstream.example.com';
oProxy.Proxy.Port := 8080;
oProxy.Active := true;