2016-11-28 223 views
2

問題背景GRPC與Asp.net核心的mvc

沿側運行目前,我有鏈接到同一個數據庫中的兩個項目。第一個應用程序是使用實體框架的Asp.Net Core MVC項目。它擁有一堆儀表板和REST API。

第二個項目是一個Asp.Net Core控制檯應用程序,它將一個gRPC服務器託管在一個單獨的端口上。

第三個項目是一箇中間Schema項目,它將模型作爲上述兩個項目的類庫提供服務。

問題

有沒有可能/更好的東道國,在同一個項目爲MVC項目GRPC項目?如果是這樣,那麼在kestrel/grpc的線程池中將不會發生衝突?最後,這會刪除使用IISIntergration在IIS服務器上託管應用程序的能力嗎?

TL; DR 可以/我應該在ASPNET核主機既是GRPC和MVC服務器使用相同的項目,會產生什麼後果?

回答

4

有關線程池的衝突問題的一部分:

如果是的話會有在紅隼/ GRPC的線程池沒有衝突?

GRPC產生自己的線程池來完成工作並完成與grpc調用相關的任務。只要異步/等待在任何地方都可以使用,並且潛在的長時間運行的CPU工作被卸載,那麼在這方面應該不會有任何問題。