TsgcWebSocketLoadBalancerServerイベント › OnClientBinary

OnClientBinary イベント

ダウンストリームクライアントからのバイナリフレームが選択されたバックエンドサーバーに転送される前に発火します。

構文

property OnClientBinary: TsgcWSLBServerBinaryEvent;
// TsgcWSLBServerBinaryEvent = procedure(Connection: TsgcWSConnection; Data: TMemoryStream; var Handled: Boolean) of object

デフォルト値

解説

OnClientBinary は、バランスされたクライアントから受信したすべてのバイナリ WebSocket フレームがバックエンドサーバーに向かう途中で発生します。Connection パラメーターはダウンストリームのクライアントセッションで、Data はバイナリペイロードです(位置 0。解放しないでください)。Handled を True に設定するとロードバランサーでフレームを消費し、バックエンドへのリレーを防ぎます。False(デフォルト)のままにすると、ロードバランサーはフレームをそのまま転送します。バイナリトラフィックの検査、監査、書き換え、ヘルスチェックスタイルメッセージの短絡、またはバックエンドサーバーに到達すべきでないペイロードのドロップに適しています。

使用例


procedure OnClientBinary(Connection: TsgcWSConnection; Data: TMemoryStream;
  var Handled: Boolean);
begin
  // drop empty frames instead of forwarding them
  Handled := Data.Size = 0;
end;

イベントに戻る