TsgcWebSocketLoadBalancerServer › Olaylar › OnBeforeSendServerBinding
Yük dengeleyici, yeni kabul edilen bir alt akış istemcisine bir arka uç sunucu bağlaması (host, port, protocol) göndermeden önce tetiklenir.
property OnBeforeSendServerBinding: TsgcWSLBBeforeSendServerHostEvent;
// TsgcWSLBBeforeSendServerHostEvent = procedure(Connection: TsgcWSConnection; var Binding: TsgcWSLoadBalancerServerBinding) of object
—
OnBeforeSendServerBinding, yük dengeleyici gelen bir istemci bağlantısı için bir arka uç sunucusu seçtikten sonra ve seçilen binding URL'si istemciye döndürülmeden önce tetiklenir. Binding parametresi, geri gönderilecek ana bilgisayarı, portu ve protokolü açığa çıkarır; genel adresi geçersiz kılmak için onu değiştirin (örneğin, istemcinin arka uca bir ters proxy veya arka ucun kendi kaydettiğinden farklı bir genel IP üzerinden ulaşması gerektiğinde ana bilgisayarı yeniden yazmak için). Tipik kullanımlar, belirli istemci IP'leri için binding'i ayarlamak, yapışkan oturum hedefi eklemek veya isteğe göre belirli bir protokolü (ws ve wss) zorlamaktır. Yapılandırılmış LoadBalancing algoritması tarafından hesaplanan değeri korumak için Binding'i değiştirmeden bırakın.
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;