【发布时间】:2017-04-11 19:57:51
【问题描述】:
问题背景
我目前有两个项目链接到同一个数据库。第一个应用程序是使用实体框架的 Asp.Net Core MVC 项目。它托管了一堆仪表板和 REST API。
第二个项目是一个 Asp.Net Core Console 应用程序,它在一个单独的端口上托管一个 gRPC 服务器。
第三个项目是一个中间模式项目,它将模型作为上述两个项目的类库。
问题
将 gRPC 项目托管在与 MVC 项目相同的项目中是否可能/更好?如果是这样,那么在 kestrel/grpc 的线程池中是否没有冲突?最后,这是否会取消使用 IISIntergration 在 IIS 服务器上托管应用程序的能力?
TL;DR 我可以/应该使用同一个项目在 aspnet 核心上同时托管 gRPC 和 MVC 服务器吗?会有什么影响?
【问题讨论】:
-
您肯定希望在同一个服务中拥有一个 HTTP 端点,该端点为 gRPC 提供健康检查和指标收集服务,如果您查看 Prometheus 和 K8S,目前只能通过 HTTP 完成。
标签: c# asp.net-core console-application asp.net-core-mvc grpc