Go server stream behind Nginx Ingress Controller

21 views
Skip to first unread message

Jordi Forns

unread,
Jul 10, 2020, 6:18:53 AM7/10/20
to grpc.io

Hi all.

I'm having trouble with detecting client disconnections in server streams.

The server is written in Go and is behind an Nginx Ingress Controller. Apparently Nginx is responding with ACKs to the PING keepalive messages, so they're not reaching the final clients and thus lose their purpose.

I tried activating TCP keepalive in Nginx and I can see the ping frames, but it seems the Go server is not being notified when there's a timeout.

I'm not sure if TCP keepalives are supported by the Go implementation, haven't found much info in that regard. Could someone clarify?

Regards,

Jordi.

Mya Pitzeruse

unread,
Jul 16, 2020, 1:10:23 PM7/16/20
to Jordi Forns, grpc.io
There's a lot to take into consideration here such as where your workload currently runs (AWS, GCP, etc).. For example, I know some* AWS load balancers support HTTP/2, but don't properly support things like trailers which gRPC relies on in stream based calls.

--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/fc6b02dc-36f6-4991-964d-86b9c7fc8bf9n%40googlegroups.com.


--

Mya Pitzeruse

Principal Software Engineer - Service Infrastructure

Gender Pronouns: She, Her, Hers

mjp...@indeed.com


Indeed - We help people get jobs.

Indeed.com


Facebook  |  Twitter  |  Instagram

Reply all
Reply to author
Forward
0 new messages