我试图理解 MAX_CONCURRENT_STREAMS 和 maxConcurrentCallsPerConnection 之间的区别。我读到大多数服务器将 MAX_CONCURRENT_STREAMS 默认设置为 100,而根据 GRPC 文档,maxConcurrentCallsPerConnection 默认为无限制。
我将 Springboot 与 io.grpc:grpc-netty-shaded 包一起使用
这两个领域到底有什么区别?谢谢你
它们是相同的设置,但实现不同。 HTTP/2 中的功能名称是“MAX_CONCURRENT_STREAMS”。 gRPC 默认没有限制,但在 HTTP/2 中常见限制为 100。
maxConcurrentCallsPerConnection()
grpc-java 中是配置 MAX_CONCURRENT_STREAMS 的 API;它的名称不同,因此您不必知道调用使用 HTTP/2 流并明确它是每个连接。 gRPC C Core 只是调用与 HTTP/2 中相同的设置:MAX_CONCURRENT_STREAMS。