eventing icon indicating copy to clipboard operation
eventing copied to clipboard

gRPC support

Open CEikermann opened this issue 11 months ago • 5 comments

Problem

  • Knative eventing supports ksvc service only via HTTP
  • gRPC is more performant and optimized than HTTP

Are there any plans to support gRPC as eventing sink?

CEikermann avatar Feb 19 '25 19:02 CEikermann

@CEikermann we have no plans for gRPC support, however note that gRPC is under the hood http2 + protobuf.

http2 upgrade might work when enabling TLS (depending on client-server negotiation) https://knative.dev/docs/eventing/features/transport-encryption/, not without encryption as we haven't enabled h2c (http2 over plain text).

Regarding the payload optimization you would get from protobuf as format, you can still transport protobuf payloads as the CloudEvents data field, the data field is treated as a binary blob. That combined with binary-mode, which is supported, https://github.com/cloudevents/spec/blob/main/cloudevents/bindings/http-protocol-binding.md#13-content-modes should give you a more efficient way of transporting data.

pierDipi avatar Mar 07 '25 07:03 pierDipi

Any plans to support h2c?

CEikermann avatar Mar 07 '25 11:03 CEikermann

See https://github.com/knative/eventing/issues/3312#issuecomment-642742621, there are a few problems on the egress side ("dispatcher" --> "subscriber") for h2c

pierDipi avatar Mar 12 '25 07:03 pierDipi

I also ask to promote grpc. I experimenting Arrow flight server on Knative My goal is to leverage all the benefits of Knative and implement Arrow flight server. They expect that the request to the server will be grpc:// or grpc-tls:// and not HTTP. I was able to implement grpc on Knative while calling https...this won't work for them. How can I close this gap?

LeonB28 avatar Mar 15 '25 23:03 LeonB28

This issue is stale because it has been open for 90 days with no activity. It will automatically close after 30 more days of inactivity. Reopen the issue with /reopen. Mark the issue as fresh by adding the comment /remove-lifecycle stale.

github-actions[bot] avatar Jun 14 '25 01:06 github-actions[bot]