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

Host grpc service in iis or as an app service? #9020

Open
moodya opened this issue Apr 3, 2019 · 19 comments

Comments

Projects
None yet
9 participants
@moodya
Copy link

commented Apr 3, 2019

Is it possible to do this? If so how?

@moodya moodya changed the title Host grpc service in iis? Host grpc service in iis or as an app service? Apr 3, 2019

@Eilon Eilon added the area-grpc label Apr 3, 2019

@Eilon

This comment has been minimized.

Copy link
Member

commented Apr 3, 2019

Hi @moodya , have you checked out the docs at https://docs.microsoft.com/en-us/aspnet/core/tutorials/grpc/grpc-start?view=aspnetcore-3.0&tabs=visual-studio ?

If you're running into a problem, please let us know and we can investigate.

@Eilon Eilon added the question label Apr 3, 2019

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 3, 2019

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 3, 2019

@Eilon

This comment has been minimized.

Copy link
Member

commented Apr 3, 2019

@shirhatti - any idea on this?

@shirhatti

This comment has been minimized.

Copy link
Member

commented Apr 3, 2019

Can't host gRPC in IIS/Azure App Service.
The HTTP/2 implementation of Http.Sys does not support HTTP response trailing headers which gRPC relies on.

@JamesNK JamesNK added this to the Discussions milestone Apr 3, 2019

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 4, 2019

@shirhatti

This comment has been minimized.

Copy link
Member

commented Apr 8, 2019

The recommended approach is to host your gRPC service on AKS.

As far as App Service timelines go, I'd defer to @stefsch

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 8, 2019

@alustrement

This comment has been minimized.

Copy link

commented Apr 25, 2019

I'm currently expecting issues to do this. I got a gRPC service running well using aspnetcore 3 preview 3 and Kestrel. But, an error about trailers appears using IIS when the service send the response (the request is well received) :
gPRC error => 2 UNKNOWN: No status received)
Dotnet error => "Trailers are not supported for this response" in Microsoft.AspNetCore.Http.ResponseTrailerExtensions.AppendTrailer(HttpResponse response, String trailerName, StringValues trailerValues) at Grpc.AspNetCore.Server.Internal.HttpResponseExtensions.ConsolidateTrailers...

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 25, 2019

@alustrement

This comment has been minimized.

Copy link

commented Apr 25, 2019

Following this exchange https://forums.iis.net/p/1241598/2147837.aspx?p=True&t=636917571046786374, it seems that is not the responsibilty of the web server to handle gRPC. gPRC use HTTP/2, IIS supports HTTP/2, so it must works. If it's not, it's a bug from IIS or, more possible, from dotnetcore.

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 25, 2019

@alustrement

This comment has been minimized.

Copy link

commented Apr 25, 2019

Thanks, I missed it and it makes sense with my issue.
@shirhatti the support is planned on the roadmap ?

@shirhatti

This comment has been minimized.

Copy link
Member

commented Apr 25, 2019

We (IIS) are currently evaluating whether to support HTTP response trailers. No roadmaps/commitments I can speak to yet.

@jbrantly

This comment has been minimized.

Copy link

commented Apr 25, 2019

@shirhatti Given gRPC seems to be a major feature of .NET Core 3 (https://github.com/grpc/grpc-dotnet), it would be a real shame if it's not hostable in IIS/App Service given so many .NET web applications are hosted on those. I hope the availability of that feature in .NET Core helps drive your roadmap.

@Misiu

This comment has been minimized.

Copy link

commented Apr 26, 2019

I fully agree with @jbrantly. gRPC is advertised as one of the main features of .NET Core 3.
It should be hostable in IIS/Azure App Services.
@shirhatti please consider adding this to the roadmap

@moodya

This comment has been minimized.

Copy link
Author

commented Apr 26, 2019

@aloisdeniel

This comment has been minimized.

Copy link

commented Apr 26, 2019

I couldn't agree more.

@davidfowl

This comment has been minimized.

Copy link
Member

commented Apr 26, 2019

We're looking into it. It requires both Windows kernel changes and IIS changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.