微软选择不在.NET 核心中支持应用域是否有一个强有力的理由?
应用程序域在构建长时间运行的服务器应用程序时特别有用,我们可能希望更新服务器装载的程序集,这是一种优雅的方式,而不需要关闭服务器。
如果没有 AppDomains,我们将如何在长时间运行的服务器进程中替换程序集?
AppDomains 还为我们提供了一种隔离服务器代码不同部分的方法。类似地,定制的 websocket 服务器可以在主应用程序域中使用套接字代码,而我们的服务在辅助应用程序域中运行。
没有 AppDomain,上述场景就不可能实现。
我可以看到一个论点,可能会谈到使用云的虚拟机概念来处理程序集更改,而不必承担 AppDomains 的开销。但这是微软的想法或说法吗?或他们有一个具体的原因和替代上述情况?