`
wodamazi
  • 浏览: 1417971 次
文章分类
社区版块
存档分类
最新评论

IIS架构与HTTP请求处理流程(2)

 
阅读更多
ASP.NET Web编程原理 之
IIS架构与HTTP请求处理流程(2)

(续上文

<meta content="Word.Document" name="ProgId"> <meta content="Microsoft Word 12" name="Generator"> <meta content="Microsoft Word 12" name="Originator"> <link href="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" rel="File-List"> <link href="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_editdata.mso" rel="Edit-Time-Data"> <link href="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_oledata.mso" rel="OLE-Object-Data"> <style> v/:* {behavior:url(#default#VML);} o/:* {behavior:url(#default#VML);} w/:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <link href="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" rel="themeData"> <link href="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" rel="colorSchemeMapping"> <style> <!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 680460288 22 0 262145 0;} @font-face {font-family:黑体; panose-1:2 1 6 9 6 1 1 1 1 1; mso-font-alt:SimHei; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:-2147482945 953122042 22 0 262145 0;} @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4; mso-font-charset:0; mso-generic-font-family:roman; mso-font-pitch:variable; mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face {font-family:华文中宋; panose-1:2 1 6 0 4 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:647 135200768 16 0 262303 0;} @font-face {font-family:隶书; panose-1:2 1 5 9 6 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:1 135135232 16 0 262144 0;} @font-face {font-family:新宋体; panose-1:2 1 6 9 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 680460288 22 0 262145 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 680460288 22 0 262145 0;} @font-face {font-family:"/@新宋体"; panose-1:2 1 6 9 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 680460288 22 0 262145 0;} @font-face {font-family:"/@黑体"; panose-1:2 1 6 9 6 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:-2147482945 953122042 22 0 262145 0;} @font-face {font-family:"/@隶书"; panose-1:2 1 5 9 6 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:1 135135232 16 0 262144 0;} @font-face {font-family:"/@华文中宋"; panose-1:2 1 6 0 4 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:647 135200768 16 0 262303 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-unhide:no; mso-style-qformat:yes; mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} h1 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 1 Char"; mso-style-next:正文; margin-top:24.0pt; margin-right:0cm; margin-bottom:24.0pt; margin-left:0cm; text-align:center; text-indent:0cm; line-height:12.0pt; mso-line-height-rule:exactly; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:1; mso-list:l0 level1 lfo1; font-size:26.0pt; mso-bidi-font-size:36.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:华文中宋; mso-font-kerning:22.0pt; font-weight:normal; mso-bidi-font-weight:bold;} h2 {mso-style-update:auto; mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 2 Char"; mso-style-next:正文; margin-top:13.0pt; margin-right:0cm; margin-bottom:13.0pt; margin-left:0cm; text-align:center; text-indent:0cm; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:2; mso-list:l0 level2 lfo1; font-size:24.0pt; font-family:"Times New Roman","serif"; color:#993300; mso-font-kerning:1.0pt; font-weight:normal; mso-bidi-font-weight:bold;} h3 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 3 Char"; mso-style-next:正文; margin-top:6.0pt; margin-right:0cm; margin-bottom:6.0pt; margin-left:0cm; text-indent:0cm; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:3; mso-list:l0 level3 lfo1; font-size:18.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:隶书; color:#339966; mso-font-kerning:1.0pt; font-weight:normal; mso-bidi-font-weight:bold;} h4 {mso-style-update:auto; mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 4 Char"; mso-style-next:正文; margin-top:6.0pt; margin-right:0cm; margin-bottom:0cm; margin-left:0cm; margin-bottom:.0001pt; text-indent:0cm; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:4; mso-list:l0 level4 lfo1; font-size:16.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman","serif"; mso-font-kerning:1.0pt; font-weight:normal; mso-bidi-font-weight:bold;} h5 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 5 Char"; mso-style-next:正文; margin-top:14.0pt; margin-right:0cm; margin-bottom:14.5pt; margin-left:0cm; text-indent:0cm; line-height:156%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:5; mso-list:l0 level5 lfo1; font-size:14.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:新宋体; color:#333399; mso-font-kerning:1.0pt;} h6 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 6 Char"; mso-style-next:正文; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.2pt; margin-left:0cm; text-indent:0cm; line-height:133%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:6; mso-list:l0 level6 lfo1; font-size:12.0pt; font-family:"Arial","sans-serif"; mso-fareast-font-family:黑体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt;} p.MsoHeading7, li.MsoHeading7, div.MsoHeading7 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 7 Char"; mso-style-next:正文; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.2pt; margin-left:0cm; text-indent:0cm; line-height:133%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:7; mso-list:l0 level7 lfo1; font-size:10.5pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:宋体; color:navy; mso-font-kerning:1.0pt; font-weight:bold;} p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 8 Char"; mso-style-next:正文; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.2pt; margin-left:0cm; text-indent:0cm; line-height:133%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:8; mso-list:l0 level8 lfo1; font-size:12.0pt; font-family:"Arial","sans-serif"; mso-fareast-font-family:黑体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt;} p.MsoHeading9, li.MsoHeading9, div.MsoHeading9 {mso-style-unhide:no; mso-style-qformat:yes; mso-style-link:"标题 9 Char"; mso-style-next:正文; margin-top:12.0pt; margin-right:0cm; margin-bottom:3.2pt; margin-left:0cm; text-indent:0cm; line-height:133%; mso-pagination:lines-together; page-break-after:avoid; mso-outline-level:9; mso-list:l0 level9 lfo1; font-size:10.5pt; font-family:"Arial","sans-serif"; mso-fareast-font-family:黑体; mso-bidi-font-family:"Times New Roman"; mso-font-kerning:1.0pt;} p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText {mso-style-noshow:yes; mso-style-unhide:no; mso-style-link:"脚注文本 Char"; margin:0cm; margin-bottom:.0001pt; mso-pagination:none; layout-grid-mode:char; font-size:9.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} p.MsoCaption, li.MsoCaption, div.MsoCaption {mso-style-unhide:no; mso-style-qformat:yes; mso-style-next:正文; margin:0cm; margin-bottom:.0001pt; text-align:center; mso-pagination:none; font-size:10.0pt; font-family:"Arial","sans-serif"; mso-fareast-font-family:黑体; mso-font-kerning:1.0pt;} span.MsoFootnoteReference {mso-style-noshow:yes; mso-style-unhide:no; vertical-align:super;} span.1Char {mso-style-name:"标题 1 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 1"; mso-ansi-font-size:26.0pt; mso-bidi-font-size:36.0pt; font-family:华文中宋; mso-fareast-font-family:华文中宋; mso-font-kerning:22.0pt; mso-bidi-font-weight:bold;} span.2Char {mso-style-name:"标题 2 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 2"; mso-ansi-font-size:24.0pt; mso-bidi-font-size:24.0pt; color:#993300; mso-font-kerning:1.0pt; mso-bidi-font-weight:bold;} span.3Char {mso-style-name:"标题 3 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 3"; mso-ansi-font-size:18.0pt; mso-bidi-font-size:18.0pt; font-family:隶书; mso-fareast-font-family:隶书; color:#339966; mso-font-kerning:1.0pt; mso-bidi-font-weight:bold;} span.4Char {mso-style-name:"标题 4 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 4"; mso-ansi-font-size:16.0pt; mso-bidi-font-size:12.0pt; mso-font-kerning:1.0pt; mso-bidi-font-weight:bold;} span.5Char {mso-style-name:"标题 5 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 5"; mso-ansi-font-size:14.0pt; mso-bidi-font-size:14.0pt; font-family:新宋体; mso-fareast-font-family:新宋体; color:#333399; mso-font-kerning:1.0pt; font-weight:bold;} span.6Char {mso-style-name:"标题 6 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 6"; mso-ansi-font-size:12.0pt; mso-bidi-font-size:12.0pt; font-family:"Arial","sans-serif"; mso-ascii-font-family:Arial; mso-fareast-font-family:黑体; mso-hansi-font-family:Arial; mso-font-kerning:1.0pt; font-weight:bold;} span.7Char {mso-style-name:"标题 7 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 7"; mso-ansi-font-size:10.5pt; mso-bidi-font-size:10.5pt; color:navy; mso-font-kerning:1.0pt; font-weight:bold;} span.8Char {mso-style-name:"标题 8 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 8"; mso-ansi-font-size:12.0pt; mso-bidi-font-size:12.0pt; font-family:"Arial","sans-serif"; mso-ascii-font-family:Arial; mso-fareast-font-family:黑体; mso-hansi-font-family:Arial; mso-font-kerning:1.0pt;} span.9Char {mso-style-name:"标题 9 Char"; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:"标题 9"; mso-ansi-font-size:10.5pt; mso-bidi-font-size:10.5pt; font-family:"Arial","sans-serif"; mso-ascii-font-family:Arial; mso-fareast-font-family:黑体; mso-hansi-font-family:Arial; mso-font-kerning:1.0pt;} span.Char {mso-style-name:"脚注文本 Char"; mso-style-noshow:yes; mso-style-unhide:no; mso-style-locked:yes; mso-style-link:脚注文本; mso-ansi-font-size:9.0pt; mso-bidi-font-size:9.0pt; mso-font-kerning:1.0pt;} .MsoChpDefault {mso-style-type:export-only; mso-default-props:yes; font-size:10.0pt; mso-ansi-font-size:10.0pt; mso-bidi-font-size:10.0pt; mso-ascii-font-family:"Times New Roman"; mso-fareast-font-family:宋体; mso-hansi-font-family:"Times New Roman"; mso-font-kerning:0pt;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no; mso-footnote-separator:url("file:///C:/Users/JINXUL~1/AppData/Local/Temp/msohtmlclip1/01/clip_header.htm") fs; mso-footnote-continuation-separator:url("file:///C:/Users/JINXUL~1/AppData/Local/Temp/msohtmlclip1/01/clip_header.htm") fcs; mso-endnote-separator:url("file:///C:/Users/JINXUL~1/AppData/Local/Temp/msohtmlclip1/01/clip_header.htm") es; mso-endnote-continuation-separator:url("file:///C:/Users/JINXUL~1/AppData/Local/Temp/msohtmlclip1/01/clip_header.htm") ecs;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:123738110; mso-list-template-ids:-310468926;} @list l0:level1 {mso-level-start-at:8; mso-level-style-link:"标题 1"; mso-level-suffix:none; mso-level-text:第%1章; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level2 {mso-level-number-format:none; mso-level-style-link:"标题 2"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level3 {mso-level-number-format:none; mso-level-style-link:"标题 3"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level4 {mso-level-number-format:none; mso-level-style-link:"标题 4"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level5 {mso-level-number-format:none; mso-level-style-link:"标题 5"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level6 {mso-level-number-format:none; mso-level-style-link:"标题 6"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level7 {mso-level-number-format:none; mso-level-style-link:"标题 7"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level8 {mso-level-number-format:none; mso-level-style-link:"标题 8"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l0:level9 {mso-level-number-format:none; mso-level-style-link:"标题 9"; mso-level-suffix:none; mso-level-text:""; mso-level-tab-stop:none; mso-level-number-position:left; margin-left:0cm; text-indent:0cm;} @list l1 {mso-list-id:2014642387; mso-list-type:hybrid; mso-list-template-ids:-312174330 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:21.0pt; mso-level-number-position:left; margin-left:21.0pt; text-indent:-21.0pt; font-family:Wingdings;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} --> </style>

8.1.2 应用程序池与工作者进程


应用程序池(Applicaion Pool”是Windows Server为提升Web服务的性能和可靠性而引入的一个Web程序隔离机制。

一个应用程序池可包含一个或多个Web应用程序。ASP.NET Web应用程序必须运行在一个应用程序池中。

Windows Server中,一个或多个“工作者进程(Worker Process”为应用程序池提供服务,停止一个应用程序池将导致这些工作者进程被关闭,这时,所有发往此应用程序池中Web应用程序的HTTP请求将收到“503服务不可用”的响应信息。

87展示了一台Web服务器上正在运行的应用程序池。

应用程序池

<shapetype id="_x0000_t75" coordsize="21600,21600" o:preferrelative="t" o:spt="75" filled="f" stroked="f" path=" m@4@5 l@4@11@9@11@9@5 xe"><stroke joinstyle="miter"><formulas><f eqn="if lineDrawn pixelLineWidth 0"><f eqn="sum @0 1 0"><f eqn="sum 0 0 @1"><f eqn="prod @2 1 2"><f eqn="prod @3 21600 pixelWidth"><f eqn="prod @3 21600 pixelHeight"><f eqn="sum @0 0 1"><f eqn="prod @6 1 2"><f eqn="prod @7 21600 pixelWidth"><f eqn="sum @8 21600 0"><f eqn="prod @7 21600 pixelHeight"><f eqn="sum @10 21600 0"></f><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"><lock aspectratio="t" v:ext="edit"></lock><shape id="图片_x0020_2" style="visibility: visible; width: 415.5pt; height: 152.25pt;" type="#_x0000_t75" o:spid="_x0000_i1025"><imagedata o:title="" src="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image001.png"></imagedata></shape></path></f></f></f></f></f></f></f></f></f></f></f></formulas></stroke></shapetype>

87 IIS 7中的应用程序池

87所示,本台Web服务器上的设置了3个应用程序池,每个应用程序池中可运行多个Web应用程序,图中DefaultAppPool这一应用程序池运行了5Web应用程序。每个应用程序池都可以加载特定版本的.NET Framework,以对ASP.NET应用程序提供支持。在IIS 7中,应用程序池有两种运行模式——经典模式和集成模式

经典模式下,IIS7应用程序池运行方式同IIS 6 [1]

集成模式下,IIS 7直接预装载.NET Framework,从而为ASP.NET应用程序提供了更好的性能。

IIS管理器中可以随时启动和停止某个应用程序池。

Windows Server上运行应用程序池的系统帐号是“NetworkService”。在后面的章节中可以看到在部署ASP.NET网站时往往需要给此帐号设置特定的权限(比如允许ASP.NET应用程序向某文件夹中添加文件)。

下面深入介绍一下IIS的系统架构以及Windows Server是如何响应HTTP请求的。


8.1.3 IIS的系统架构

IIS 6(运行于Windows 2003 Server)的架构如 88所示。



IIS 6架构

<shape id="_x0000_i1026" style="width: 415.5pt; height: 192.75pt;" o:ole="" type="#_x0000_t75" coordsize="21600,21600"><imagedata o:title="" src="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image002.emz"></imagedata></shape> 88 IIS 6的架构

88中可以看到,IIS 6架构由以下几个部分组成:

(1)HTTP.SYS:运行于Windows核心(Kernel)的一个组件,它负责侦听(Listen)来自于外部的HTTP请求(通常来自网络中另一台计算机上的浏览器),根据请求的URL将其转发给相应的应用程序池,由运行于应用程序池中的工作者进程来响应此HTTP请求。当此HTTP请求处理完成时,它又负责将处理结果发送出去(其接收者通常为发出HTTP请求的浏览器)。

为了提供更好的性能,HTTP.SYS内部建立了一个缓冲区,将最近的HTTP请求处理结果保存起来,如果发现某个HTTP请求“不久以前”处理过了(即在缓冲区中可以找到),它就简单地直接从缓冲区中取出这些结果发回给客户端(通常为发出HTTP请求的浏览器)。

(2)InetInfo:在IIS 5时代,InetInfoIIS服务的主进程,在IIS 6中,它不再负责处理HTTP请求,但它继续负责管理除了WWW服务之外的其他互联网服务,比如用于文件传输的FTP服务和用于邮件收发的SMTP服务。

InetInfo内部维护了一个元数据库(Metabase),在这个数据库中存入了一些重要的信息,这些信息对于维护各种互联网服务(比如WWWFTP)等是必不可少的。

(3)Worker Process:负责处理HTTP请求,被译为“工作者进程”,事实上,它是由一个可执行程序W3WP.EXE运行时所生成的一个进程[2]每一个工作者进程内部都可以管理一个或多个ASP.NET应用程序。工作者进程运行于一个应用程序池(Application Pool)中。IIS 6可以创建多个应用程序池,并指定某个ASP.NET应用程序在特定的应用程序池中运行( 89)。



设定程序池

<shape id="_x0000_i1027" style="visibility: visible; width: 282.75pt; height: 261pt;" type="#_x0000_t75" alt="IIS1"><imagedata o:title="IIS1" src="file:///C:%5CUsers%5CJINXUL%7E1%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_image003.jpg"></imagedata></shape>

89 设定ASP.NET网站所属的应用程序池(图截自Windows 2003 Server

一般情况下,一个应用程序池只有一个工作者进程,但也可通过配置必要的参数让多个工作者进程同时运行在同一个应用程序池中,在这种情况下,这个应用程序池被称为“Web GardenWeb园)”。

(4)WASWeb Admin Service:这是一个监控程序,它一方面可以存取放在InetInfo元数据库(Metabase)中的各种信息,另一方面也负责监控应用程序池(Application Pool)中的工作者进程的工作状态况,必要时它会关闭一个老的工作者进程并创建一个新的取而代之。



[1] IIS 6中应用程序池的运行方式后文有详细介绍

[2]“进程(Process)”是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。如用通俗的语言来表达,可以简单地将“进程”理解成一个正在运行的程序。


(请看下一部分
分享到:
评论

相关推荐

    Web安全深度剖析(张柄帅)

    第2章 深入HTTP请求流程 6 2.1 HTTP协议解析 6 2.1.1 发起HTTP请求 6 2.1.2 HTTP协议详解 7 2.1.3 模拟HTTP请求 13 2.1.4 HTTP协议与HTTPS协议的区别 14 2.2 截取HTTP请求 15 2.2.1 Burp Suite Proxy 初体验 15 ...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    2.4.3 事件如何与事件处理程序连接 2.5 Web项目 2.5.1 基于项目的开发 2.5.2 创建Web项目 2.5.3 迁移旧版Visual Studio创建的网站 2.6 Visual Studio调试 2.6.1 单步调试 2.6.2 变量监视 2.6.3 ...

    网络安全方面的论文.doc

    国际标准化组织(ISO)将"计算机安全"定义为:"为数据处理系统建 立与采取的技术与管理的安全保护,保护计算机硬件、软件数据不因偶然与恶意的原因而 遭到破坏、更改与泄漏",上述计算机安全的定义包含物理安全与逻辑安全...

    ASP.NET4高级程序设计(第4版) 3/3

    2.4.3 事件如何与事件处理程序连接 46 2.5 Web项目 47 2.5.1 基于项目的开发 47 2.5.2 创建Web项目 48 2.5.3 迁移旧版Visual Studio创建的网站 49 2.6 Visual Studio调试 51 2.6.1 单步调试 52 2.6.2 ...

    亮剑.NET深入体验与实战精要2

    7.7.2 手动发送HTTP请求调用Web Service 295 7.8 实现异步调用Web Service 297 7.9 如何保证Web Service的安全 299 7.9.1 通过SoapHeader来增强 Web Service的安全性 299 7.9.2 采用SSL实现加密传输 302 7.9.3 访问...

    亮剑.NET深入体验与实战精要3

    7.7.2 手动发送HTTP请求调用Web Service 295 7.8 实现异步调用Web Service 297 7.9 如何保证Web Service的安全 299 7.9.1 通过SoapHeader来增强 Web Service的安全性 299 7.9.2 采用SSL实现加密传输 302 7.9.3 访问...

    asp.net知识库

    Asp.net 利用OleDb的GetOLEDBSchemaTable方法得到数据库架构信息 用于 Visual Studio .Net 的 IBM DB2 开发外接程序 第2章 并发操作的一致性问题 (2) Using sqlite with .NET Visual Studio 2005 中的新 DataSet ...

    Web系统与技术 课程教材

    8.1.2 IIS的ASP.net 请求处理过程... 249 8.1.3 ASP.NET 页面生命周期... 252 8.2 ASP的常用控件... 252 8.2.1 HTML 服务器控件概述... 253 8.2.2 ASP 的标准服务器控件概述... 254 8.3 ASP的常见内置对象... ...

    ASP.NET3.5典型模块开发源代码

    12.3.3 在IIS中配置图片的特殊处理程序 145 12.3.4 测试处理程序的执行效果 147 12.4 防盗链下载实例 147 12.5 小结 149 第13章 在线客服模块 150 13.1 概述 150 13.2 QQ网站提供的在线客服 151 ...

    超级有影响力霸气的Java面试题大全文档

     Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。 与cgi的区别...

    java 面试题 总结

    Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。 与cgi的区别...

    asoft签到管理系统tykq3.5_build20110125

    2、新增“签到状态申辩”和处理申辩的功能,现在您可以向管理员提出有异议的签到记录并且要求管理员修正你的签到记录了。 3、增强了请假审批功能,现在您可以为各部门分别自定义请假审批流程了 4、新加入节假日...

    net学习笔记及其他代码应用

    Windwos(默认)用IIS...From(窗体)用帐户....Passport(密钥) 20.什么是Code-Behind技术? 答:代码后植。 21.在.net中,配件的意思是? 答:程序集。(中间语言,源数据,资源,装配清单) 22.常用的调用...

Global site tag (gtag.js) - Google Analytics