gRPC is a high-performance, open-source, universal Remote Procedure Call (RPC) framework developed by Google. It enables clients and servers to communicate efficiently, facilitating the creation of scalable and fast APIs and distributed applications. gRPC uses HTTP/2 and Protocol Buffers for data transmission, offering a lightweight and efficient communication mechanism.
Questions tagged [grpc]
20 questions
4
votes
1 answer
why do I need a certificate to establish a secure gRPC connection as a client?
When using gRPC over plain TCP the client establishes a channel with the server like this (in ruby):
stub = Helloworld::Greeter::Stub.new(service_url, :this_channel_is_insecure)
but then, when I implement TLS on the server and put in my LetsEncrypt…
Toby 1 Kenobi
- 317
2
votes
0 answers
Having trouble with gRPC calls behind an (AWS classic) load balancer
I have a server written in Python 3.6, using frameworks flask (1.0.2), and SQLAlchemy (2.4.0). I have some rest calls going out to third-party services such as vision APIs.
I have a few API calls going out RESTfuly (To make sure APIs don't hang…
Dinal24
- 121
2
votes
2 answers
Http2 load balancer by using L4
As far as I known, L4 load balancer maintains 2 TCP connections:
One is from front side to Load balancer
LB terminate above connection, create new TCP connection , change IP/Port of TCP packet to forward to backend.
In HTTP2/gGPRC, client-server…
neojh
- 21
2
votes
0 answers
Nginx self-signed certificates for gRPC server
I want to set up a gRPC service behind nginx that also serves letsencrypt enabled https services. I want to enable and disable access from client services (other websites) on a regular basis. So if CompanyC joins I ill give them a client certificate…
user464895
2
votes
1 answer
Why is Nginx truncating the JSON streaming response?
Our stack is Client(Browser) <-> Nginx Reverse Proxy <-> Webserver(Flask+Gunicorn) <-> Golang gRPC server
The problem is when the client makes a call to the /realtimedata endpoint, Flask then opens the gRPC connection and starts receiving data via a…
Paul Côté
- 21
- 3
2
votes
0 answers
Unable to receive gRPC error during a response streaming call using HAProxy in HTTP mode
I'm working on a gRPC application that will be served behind HAProxy using the http mode. If the server application immediately (ie. before sending any responses) aborts the response streaming call with specific error, then the client application…
Michał Getka
- 21
2
votes
1 answer
Does Azure Application Gateway support gRPC connections?
I've set up an Azure Application Gateway with Azure Kubernetes Service using the Azure Application Gateway Ingress Controller (AGIC) and confirmed that it's working correctly using the sample guestbook app.
I then used almost the exact configuration…
Charles Green
- 155
1
vote
0 answers
How to configure dynamic routing of gRPC requests with envoy, nomad and consul
We use nomad to deploy our applications - which provide gRPC endpoints - as tasks. The tasks are then registered to Consul, using nomad's service stanza.
The routing for our applications is achieved with envoy proxy. We are running central envoy…
DaDaDom
- 532
1
vote
1 answer
Azure functions HTTP 2.0 Proxy setting
In a Function App in the azure portal, under the configuration settings there is a an option regarding HTTP 2.0
Options are
Off
On
gRPC only
This help page also mentions the environment variable
HTTP20_ONLY_PORT
I did some experiementation by…
OrdinaryOrange
- 215
1
vote
1 answer
gRPC bidirectional streaming client sometimes close rpc unexpected EOF to server behind Nginx Ingress
I am faced with the issue that a gRPC Client in Bidirectional streaming call to the server behind an AWS NLB, nginx ingress controller sometimes throws er "close rpc error: code = Internal desc = unexpected EOF".
Here is my setup:
Golang pod gRPC…
Tristan
- 21
1
vote
2 answers
EC2 GRPC install hangs after 12 hours still no install
I'm pretty sure it's because I am using t2.nano and not something a little more beefy.
But I have used laravel forge to provision an ec2 server, I can't deploy my application however because I need to install GRPC.
I have followed these…
Lewis Smith
- 113
1
vote
1 answer
Connection incorrectly preserved when using gRPC on ISTIO
We've seen some odd behaviour on our kubernetes cluster. We have two test applications that speak gRPC. One sends a subscription message and the other sends back a stream of responses. The envisaged behaviour is that this stream stays up until…
Julian Birch
- 113
0
votes
1 answer
Expired DHCP lease on restored VM snapshot interfering with active gRPC connection?
I am using gRPC to communicate between Java (running on the host) and Python (running on my Guest VMs). My software sets up some VMs at startup with libvirt. I specify my network with a DHCP range like this:
...
BluesSolo
- 133
- 1
- 6
0
votes
2 answers
nginx request routing based on 'content-type' to split grpc from REST API requests
I have an existing setup using two cascaded nginx instances:
the outer nginx is just doing TLS termination and forward to inner nginx
the inner nginx is routing the requests to different applications (REST APIs)
Until now we were only using HTML…
Michael Dreher
- 101
0
votes
1 answer
GRPC streaming not working when forwarded via Apache reverse proxy
I have a gRPC service and I want to deploy it behind an Apache reverse proxy.
The apache configuration is similar to the following:
LoadModule http2_module modules/mod_http2.so
LoadModule proxy_http2_module…
crazyman
- 66