'Can you use gRPC/gRPC-Web to communicate between Microservices hosted on Azure?
I am currently designing a Microservice Architecture, I am very new to the topic, and this question doesn't seem to be explicitly answered anywhere.
Is it possible to Communicate between Microservices (Azure App Services) with gRPC? Could it perhaps be done with Containers or Kestrel in some way so it could support HTTP/2?
I have the following example working when hosted locally:

However when hosting them in In Azure it does not seem to work:
Basically Is it even possible to use gRPC in Azure or would I have to use gRPC-Web for all communications? Or are there any Recommendations/Alternatives like REST/SignalR?
Solution 1:[1]
According to the developer's usage, I don't recommend using gRPC. For specific details, you can refer to user feedback and some screenshots I took below.
You can read this article first.
SIGNALR VS GRPC ON ASP.NET CORE – WHICH ONE TO CHOOSE
Current status:
2. Azure SignalR Service?Official recommendation?
Developer feedback:
gRpc support in Azure App Service
pic 1.
pic 2.
pic 3.
pic 4.
Solution 2:[2]
As of now (December 2021), this issue is still open (since April 2019) https://github.com/dotnet/aspnetcore/issues/9020
Azure App Services uses IIS/Windows/Http.sys. Http.sys is baked into the OS and doesn't fully support HTTP/2 trailing headers that gRPC depends on.
Solution 3:[3]
Figured it out. Ended up using Dapr, a Microservice building package. Its pretty great so far, and it has built in GRPC Support
Solution 4:[4]
Microsoft just announced that it will start supporting gRPC on Azure App Service https://azure.github.io/AppService/2022/05/23/gRPC-support-on-App-Service.html
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Jason |
| Solution 2 | Vince |
| Solution 3 | Matt |
| Solution 4 | Tamir Dresher |






