Azure service fabric 用于托管MVC和服务的MS服务结构

Azure service fabric 用于托管MVC和服务的MS服务结构,azure-service-fabric,Azure Service Fabric,在MS Service Fabric中承载前端(asp.net MVC 6)和后端(WCF/WebAPI服务)是一种有效的方法吗?Fabric作为运行服务的平台进行销售。既然MVC和服务都需要扩展,那么在服务结构中同时使用这两个层难道没有意义吗?不必处理托管前端部件Separaley,更不用说扩展它了,这听起来很有吸引力。我可能错了,但我不能100%确定您可以在Service Fabric内托管Asp.Net MVC 6或WCF应用程序,但您肯定可以托管Web API应用程序。无论您托管的Asp

在MS Service Fabric中承载前端(asp.net MVC 6)和后端(WCF/WebAPI服务)是一种有效的方法吗?Fabric作为运行服务的平台进行销售。既然MVC和服务都需要扩展,那么在服务结构中同时使用这两个层难道没有意义吗?不必处理托管前端部件Separaley,更不用说扩展它了,这听起来很有吸引力。

我可能错了,但我不能100%确定您可以在Service Fabric内托管Asp.Net MVC 6或WCF应用程序,但您肯定可以托管Web API应用程序。无论您托管的Asp.Net应用程序需要支持OWIN自托管,我不完全确定MVC或WCF是否支持。如果你发现你可以托管所有这些应用程序,那么当然,你应该拥有它

我可以说,我公司的首选方法是拥有一个只提供静态内容(HTML、JS)的前端静态应用程序,并让该前端使用我们在ServiceFabric中托管的Web API。OWIN自托管(就像您需要使用ServiceFabric一样)不允许您在不首先通过nginx这样的代理路由静态内容的情况下对其进行GZip压缩,并且您可能需要对任何前端应用程序进行GZip压缩。因此,您最好在其他地方托管前端静态应用程序,比如支持GZip压缩的传统Azure Web应用程序


希望这有帮助

我刚刚使用最新的VS创建了我的第一个Fabric Service应用程序,它允许您将服务创建为ASP.Net核心MVC应用程序。它使用Kestral作为Web服务器,但我想您也可以使用IIS或OWIN。如果您选择坚持使用Kestral,显然您可以通过中间件()添加GZip,尽管我自己还没有尝试过这一点

谢谢!我认为有一篇博文展示了如何在OWIN上轻松设置MVC,并在SF上托管。所以这绝对是可行的,只是不确定这种方法是否存在缺陷:)但正如我所说的,在SF集群中托管所有内容应该非常有吸引力。一个带有静态内容的SPA绝对是一个选择,而且可能不会像你已经说过的那样进入SF。GZip限制对asp.net mvc也是一个问题吗?它包括JQuery,我相信。。。因此,为JS文件提供服务是的,任何您在没有IIS的情况下自行托管的东西(就像您在SF上托管的东西)都无法Gzip输出。现在,如果您在Azure Web应用程序中运行MVC应用程序,您将能够获得Gzip输出,因为它使用IIS(或某种类型的IIS)。只是OWIN的自助主机没有这种内置功能。