Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supports GRPC streaming based on Asyn HTTP2 client. #381

Closed
fengli79 opened this issue Jan 27, 2017 · 7 comments
Closed

Supports GRPC streaming based on Asyn HTTP2 client. #381

fengli79 opened this issue Jan 27, 2017 · 7 comments
Labels
enhancement Feature requests. Not bugs or questions. wontfix

Comments

@fengli79
Copy link
Contributor

Pull request #353 is going to support async stream HTTP2 client in envoy.
After that, I'm going to implement the GRPC client on top of it to enable GRPC streaming calls.

@lizan
Copy link
Member

lizan commented Jan 27, 2017

Is that going to support generated grpc code or not?

@fengli79
Copy link
Contributor Author

fengli79 commented Jan 27, 2017 via email

@mattklein123
Copy link
Member

@fengli79 I know it's a question for the gRPC folks, but is there any chance of getting it eventually working with gRPC compiled code similar to how we use the deprecated generic RPC proto stuff here: https://github.com/lyft/envoy/blob/master/source/common/grpc/rpc_channel_impl.h? That would be really neat to get working in the future.

@fengli79
Copy link
Contributor Author

fengli79 commented Jan 28, 2017 via email

@mattklein123
Copy link
Member

@fengli79 I started this branch to do zero copy for proto encode/decode:
https://github.com/lyft/envoy/tree/grpc_perf

I don't have time to finish this right now, but if you find it useful for the streaming gRPC stuff feel free to build on it.

@mattklein123 mattklein123 added the enhancement Feature requests. Not bugs or questions. label Feb 22, 2017
@mattklein123
Copy link
Member

Per offsite meeting, we are going to integrate the full gRPC stack into Envoy to make outbound calls. It doesn't sound like a tremendous amount of work. I'm going to won't fix this for now and open a new issue on that.

@fengli79
Copy link
Contributor Author

OK, please assign it to me once you create it.

rshriram pushed a commit to rshriram/envoy that referenced this issue Oct 30, 2018
* Rename HTTPControll to MixerControl.

* use unordered_map.
jpsim pushed a commit that referenced this issue Nov 28, 2022
Updates our Swift example app to use the Envoy Mobile direct interfaces rather than using `URLSession` and Envoy as a listener.

Similar change to envoyproxy/envoy-mobile#349 which updated the Swift example app.

Notes:
- Changed all Objective-C demo app sources to `.m`, as they don't contain C/++ and thus don't need to be `.mm`
- Had to make some unfortunate changes to `Client.swift` and move the extension function to be implemented directly by the `Envoy` class, since extensions aren't allowed on Swift protocols that are visible to Objective-C. This temporarily breaks the `ClientTests.swift` file (not being run on CI), and I will open a PR after this lands to refactor/fix as necessary

Signed-off-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
jpsim pushed a commit that referenced this issue Nov 29, 2022
Updates our Swift example app to use the Envoy Mobile direct interfaces rather than using `URLSession` and Envoy as a listener.

Similar change to envoyproxy/envoy-mobile#349 which updated the Swift example app.

Notes:
- Changed all Objective-C demo app sources to `.m`, as they don't contain C/++ and thus don't need to be `.mm`
- Had to make some unfortunate changes to `Client.swift` and move the extension function to be implemented directly by the `Envoy` class, since extensions aren't allowed on Swift protocols that are visible to Objective-C. This temporarily breaks the `ClientTests.swift` file (not being run on CI), and I will open a PR after this lands to refactor/fix as necessary

Signed-off-by: Michael Rebello <[email protected]>
Signed-off-by: JP Simard <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature requests. Not bugs or questions. wontfix
Projects
None yet
Development

No branches or pull requests

3 participants