Heim  >  Artikel  >  Backend-Entwicklung  >  Erhöhen Sie das gRPC-Timeout in Go

Erhöhen Sie das gRPC-Timeout in Go

WBOY
WBOYnach vorne
2024-02-06 08:00:13600Durchsuche

增加 Go 中的 gRPC 超时

Frageninhalt

Bei einigen gRPC-Aufrufen muss die Verbindung länger als 5 Minuten bestehen bleiben. Die Verbindung bleibt inaktiv, bis der Vorgang abgeschlossen ist.

Ich habe es versucht keepalive 设置,甚至 context.WithTimeout(), aber die gRPC-Verbindung bricht nach 5 Minuten ab (Code = unbekannt, desc = Stream-Timeout")

Wie kann das Leerlauf-Timeout für solche gRPC-Aufrufe erhöht werden?


Richtige Antwort


Haben Sie es ausprobiert?

clientDeadline := time.Now().Add(time.Duration(*deadlineMs) * time.Millisecond)
ctx, cancel := context.WithDeadline(ctx, clientDeadline)

Ähnlich der Definition in der offiziellen grpc-Dokumentation. Dies ist der Link

https://www.php.cn/link/491723c615d42eb8b44650bcbe384561.

Das obige ist der detaillierte Inhalt vonErhöhen Sie das gRPC-Timeout in Go. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen