我已经阅读了有关如何通过Jeffery Richter的书<构建可扩展的应用程序架构的内容。 CLR通过C#>。我知道IIS是某种“主机应用程序”,它可以托管我们的Web应用程序。
我有一种模糊的印象,即以下概念之间必须存在一些关键的 关系 :
主持人申请
应用程序域
可扩展应用关节炎
有人可以在IIS的上下文中讨论上述概念的关系吗?
答案 0 :(得分:0)
希望这会在某种程度上解释:
主机申请
IIS是主机应用程序,或者说IIS应用程序池(w3wp.exe)是主机应用程序。它只是一个常规的Windows进程。
应用程序域
在主机应用程序中,有Application Domains的概念。主机应用程序可以包含一个或多个应用程序域。应用程序域可以被认为是在主机进程中提供.NET应用程序隔离的“软”进程。例如,如果您有多个网站都使用相同的应用程序池,那么每个Web应用程序将拥有自己的应用程序域。应用程序域可以独立于其他程序加载和卸载,就像Windows进程一样。
看看Scott Forsyth的短训练视频:
可扩展应用程序架构
可扩展应用程序体系结构是一种提供钩子或集成点的体系结构,因此您可以以某种方式扩展应用程序。 IIS7就是这样一个应用程序。 IIS7可以通过多种方式进行扩展,例如,这些是IIS7扩展到核心安装之外的许多方式中的一部分:
这是了解如何扩展IIS7的一个很好的起点: