Recently, I hit a `Send` block problem with grpc-go streaming. We located the problem that happened in the flowcontrol.go/writeQuota with pprof. I'm trying to read the source code to figure out how the flow control works, but it's a little bit complex.
If someone is familiar with grpc-go, could you please explain the following 3 ingredients in the flow control? I'd like to know if they're impacted by each other. Thanks. 1. writeQuota: https://github.com/grpc/grpc-go/blob/master/internal/transport/flowcontrol.go#L30 2. trInFlow: https://github.com/grpc/grpc-go/blob/master/internal/transport/flowcontrol.go#L80 3. inFlow: https://github.com/grpc/grpc-go/blob/master/internal/transport/flowcontrol.go#L119 Also, it looks like the quota of 'writeQuota' is hardcoded in 64 * 1024 and can not be changed. -- 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 [email protected]. To view this discussion visit https://groups.google.com/d/msgid/grpc-io/c7c162eb-3ffd-4486-97cf-47826f183f3dn%40googlegroups.com.
