1.IIS5.0的进程模型
如果把ASP.NET应用程序部署到windows server 2003 之前的版本(例如windows 2000、windows xp),IIS5.0进程模型是唯一的选择。根据该进程模型,aspnet_isapi.dll不能处理.aspx文件,而是充当调度程序。它搜集所有有关激活URL和基础资源的信息,然后把请求传递给另一个不同的进程:名为aspnet_wp.exe的asp.net工作进程。ISAPI扩展和工作进程之间的通信通过命名管道进行。
IIS5.0进程模型的整个原理图
工作进程的一个副本始终在运行,并托管所有活动的Web应用程序。唯一例外的情况是一个带多个CPU的Web服务器。在这种情况下,可以配置ASP.NET运行库,一边多个工作进程运行,使每个CPU分配到一个工作进程。例如,如果有多个CPU,并且需要运行线程安全的代码,但又不足以假设它在一个多处理器环境下也能顺利运行,则需要这么做。多个进程在一台单服务器中的多个CPU上运行的模型成为Web garden,并受machine.config文件中的<processModel>节上的属性控制。
当一个工作进程被所有的CPU使用,并控制所有的Web应用程序时,并不一定表示没有实现进程隔离。事实上,每个Web应用程序用自己虚拟目录进行标识,并且属于一个不同的应用程序域(AppDomain)。每当客户第一次处理一个虚拟目录时,在ASP.NET工作进程内创建一个新的AppDomain。创建新的AppDomain后,ASP.NET运行库加载所有必须的程序集,并把控制传递给托管的HTTP管道以实际服务于请求。
如果客户从一个已经运行的Web应用程序请求一个页,则ASP.NET运行库只是把该请求转发到与该虚拟目录关联的先有的AppDomain。如果该AppDomain中没有加载处理该页所需的程序集,则动态地创建它;否则,如果在第一次调用时已经创建,则只是使用它。
分享到:
相关推荐
ASP.NET core 5.0文档PDF(含目录,共5453页)。摘要: ASP.NET Core 文档及新增内容 ASP.NET 比较 .NET Core 和 .NET Framework 入门新增功能 5.0 版中的新增功能 3.1/3.0/2.2/2.1/2.0/1.1 版中的新增功能 教程Web ...
ASP.NET深入编程深入学习asp.net编程
ASP.NET 学习笔记 内包括很多实用的代码
Asp.Net应用程序生命周期以浏览器向Web服务器(IIS)发送请求为起点。Web服务器接收到请求时,会对所请求文件的文件扩展名进行检查,确定应该由哪一个ISAPI扩展(Asp.Net是Web服务器下的一个ISAPI扩展)来处理请求,...
asp.net控件笔记 asp.net控件笔记
【ASP.NET编程知识】把ASP.NET MVC项目部署到本地IIS上的完整步骤.docx
ASP.NET MVC学习笔记-Controller与View传值.
我的asp.net学习笔记 学习asp.net过程的学习笔记,大家可以来看下
北大青鸟课程Asp.net的学习笔记 详细全面
ASP.NET ISAPI 扩展 (aspnet_isapi.dll) 在 IIS 进程地址空间 (inetinfo.exe) 中运行,并通过命名管道将 ASP.NET 文件类型请求转发给 ASP.NET 辅助进程。 可以通过 IIS 元数据库中定义的映射,将特定的 ASP.NET 文件...
asp.net编程学习笔记,适合新手学习和提高。
C# winfrom asp.net 学习笔记
【ASP.NET编程知识】利用IIS调试ASP.NET网站程序的完整步骤.docx
一份不错的学习笔记。给大家压缩了一下,共六个文件,内容详细。可以跟权威解析一起学习。
声明: 仅用于研究,请勿用于商业用途,需要使用请购买正版软件 ASP.NET的TMS控件能用Microsoft Visual Studio 2003、Visual Studio 2005、Delphi for .NET或C#Builder以RAD方式开发网页应用程序。这使得网页开发就...
asp.net网站IIS配置 IIS IIS配置 asp.net
ASP.Net深入开发
微软展示企业开发的优秀范例 petshop4.0 基于 .net2.0。petshop5.0 基于.net3.5。petshop5.0 没有官方版本。
ASP.NET Core MVC 项目在IIS中部署,按照压缩文件中的说明文件部署即可,按照压缩文件中的说明文件部署即可。。