是否可以顺利地“热部署” ASP.NET Core应用程序?

时间:2019-04-03 20:39:46

标签: c# asp.net asp.net-core kestrel

在带有.NET Framework的ASP.NET下,您可以执行新代码的“热部署”而不会中断。之所以可行,是因为IIS可以为同一个应用程序处理多个应用程序域:当新代码到达时,它“耗尽”了旧的应用程序域,使其可以完成请求,同时新的应用程序域启动并开始服务新请求。

我的问题是:使用Kestrel的ASP.NET Core中有与此类似的东西吗?如果是这样,什么?

1 个答案:

答案 0 :(得分:4)

Kestrel没有像IIS那样内置。考虑一下:Kestrel直接绑定到端口80。您必须启动一个新的Kestrel进程来更新代码。这些进程不能共享端口80,并且如果没有反向代理,则无法将端口从一个进程传递给另一个进程。

您可以在Web服务器之前使用负载平衡器。然后进行滚动更新或蓝绿色部署。