TsgcHTTP3Server › Metody › SendGoAway
Wysyła ramkę GOAWAY w celu łagodnego zakończenia połączenia HTTP/3.
procedure SendGoAway(const aQUICConn: TsgcQUICServerConnection; aLastStreamId: Int64);
| Nazwa | Typ | Opis |
|---|---|---|
aQUICConn | const TsgcQUICServerConnection | Połączenie QUIC, które zostanie zakończone. |
aLastStreamId | Int64 | Identyfikator ostatniego strumienia żądań, który serwer przetworzy. Żądania na wyższych identyfikatorach strumieni nie są obsługiwane i mogą być ponowione przez klienta na nowym połączeniu. |
SendGoAway emituje ramkę HTTP/3 GOAWAY, aby rozpocząć płynne zamykanie połączenia. Informuje partnera o najwyższym numerze strumienia żądań, który serwer jest gotowy obsłużyć, więc klient powinien zaprzestać otwierania nowych strumieni żądań i może bezpiecznie ponowić wszystko powyżej aLastStreamId na innym połączeniu.
Żądania w toku o identyfikatorze strumienia równym lub niższym od podanego są kontynuowane do zakończenia; połączenie należy zamknąć dopiero po ich ukończeniu. Pozwala to serwerowi na czyste opróżnienie ruchu, na przykład przed restartem lub podczas usuwania węzła z puli, bez nagłego przerywania aktywnych żądań.
// stop accepting new requests, finish the ones already in flight
oServer.SendGoAway(aConnection, aStreamId);