TsgcWebSocketLoadBalancerServerGebeurtenissen › OnBeforeSendServerBinding

OnBeforeSendServerBinding Event

Wordt geactiveerd voordat de load balancer een backend-serverbinding (host, poort, protocol) stuurt naar een nieuw geaccepteerde downstream-client.

Syntaxis

property OnBeforeSendServerBinding: TsgcWSLBBeforeSendServerHostEvent;
// TsgcWSLBBeforeSendServerHostEvent = procedure(Connection: TsgcWSConnection; var Binding: TsgcWSLoadBalancerServerBinding) of object

Standaardwaarde

Opmerkingen

OnBeforeSendServerBinding wordt gegenereerd nadat de load balancer een backendserver heeft geselecteerd voor een inkomende clientverbinding en voordat de geselecteerde bindings-URL naar de client wordt geretourneerd. De parameter Binding geeft de host, poort en het protocol bloot dat naar de client wordt teruggestuurd; pas dit aan om het openbare adres te overschrijven (bijvoorbeeld om de host te herschrijven wanneer de client de backend via een reverse proxy of een ander openbaar IP-adres dan het door de backend zelf geregistreerde adres moet bereiken). Typische toepassingen zijn het aanpassen van de binding voor specifieke client-IP's, het injecteren van een sticky-sessiedoel, of het forceren van een bepaald protocol (ws vs wss) op basis van het verzoek. Laat de Binding ongewijzigd om de waarde te behouden die is berekend door het geconfigureerde LoadBalancing-algoritme.

Voorbeeld


procedure OnBeforeSendServerBinding(Connection: TsgcWSConnection;
  var Binding: TsgcWSLoadBalancerServerBinding);
begin
  // force secure WebSocket scheme when the client connected over TLS
  if Connection.IsSSL then
    Binding.Protocol := 'wss';
end;

Terug naar gebeurtenissen