构建高性能.NET应用配置高可用IIS服务器第一篇.pdf

构建高性能.NET应用配置高可用IIS服务器第一篇.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
构建高性能.NET应用配置高可用IIS服务器第一篇.pdf

AgileSharp-构建高性能.NET 应用之配置高可用IIS 服务器-第一篇:IIS 必须掌握的知识 构建高性能.NET 应用之配置高可用IIS 服务器-第一篇:IIS 必须掌握的知识 正确而合理的配置IIS 是构建一个高性能和高可扩展应用的基础。虽然很多的时候采用默 认的配置就已经可以处理一般的情况,但是随着站点应用的发展,特别是当访问量稍微大一点的 时候,就会暴露出很多我们认为的“奇奇怪怪”的问题。 所以,对IIS 以及相关的配置有一个全面的理解是非常有必要的,不仅仅可以很好的帮助 我们来搭建IIS 宿主环境,而且还对我们应用代码的编写以更多的指导,而且也是性能优化中一个 非常重要的组成部分。 我们首先会讲述IIS 的一些知识和它的架构,这是理解后续内容的基础。 本篇的议题如下: IIS 与应用程序池 初窥IIS 的内核 Http.sys 解析 对于一台应用程序服务器而言,它的两个比较重要的功能就是: 1. 监听从客户端发送来的Http 请求; 2. 调用请求处理程序从监听者那里获取请求,然后处理,并且把响应发送给监听者,然 后由监听者发送回给客户端。 为了使得IIS 6 的性能和可伸缩性最大,Microsoft 将HTTP 的监听者放在了操作系统的内核 模式中,同时Microsoft 也重写了请求处理程序,使得所有的应用程序有着更好的独立性,并且也 加入了很多配置和特性,使得性能和稳定性有了大幅度的提升。 首先我们就来讲讲“内核模式”与“用户模式”的一些概念,因为后面的文章会大量的用 到这些概念。 所谓的内核模式,就是Windows 内部核心的操作,在内核模式中运行的进程有着很高的 优先级,可以直接访问硬件以及系统底层的一些数据例如管理线程,进程,管理I/O 设备的驱动 等。 用户模式就是除了内核模式以外的操作,例如位来自用户应用程序的请求提供服务,包括 IIS,SQL Server 等。所有用户模式的应用程序通过运行在内核模式的执行层访问资源,例如,如 AgileSharp() 安捷雨希提供性能优化,架构设计咨询,内训,解决方案 AgileSharp-构建高性能.NET 应用之配置高可用IIS 服务器-第一篇:IIS 必须掌握的知识 果应用程序要进行磁盘的I/O,那么该请求就会提交到内核模式的执行层,由它来执行请求并且 将结果返回给发出请求的用户模式的进程。 Http 请求监听者(HTTP.sys)是运行在内核模式中的,所以允许它已经非常高的优先级运行, 并且还可以直接的访问网络接口,这样极大的提升了性能,所以这样使得IIS 对HTTP 的请求的响 度度也大大的提高。 下面,我们就开始进入今天的第一个议题。 IIS 与应用程序池 从IIS6 引入了应用程序池的概念,应用程序池使得每个Web 程序都在一个独立的环境中 运行。一个或者多个Web 应用可以加入到一个应用程序池中,每一个应用程序池都在一个单独的 进程中运行,这就意味着即使一个应用程序池崩溃了也不会影响其他的应用程序池。 出了独立性以外,应用程序池还允许我们进行更多的配置,例如,配置应用程序池运行中 的进程运行是的标识 (即,以何种身份进行运行),还可配置.NET Framework 的版本,健康检查, 以及与高性能高可用的一些设置。 对于不同的Web 应用程序,其性能,稳定性等都是不一样的,所以正确的配置会对站点 的影响非常大 (其实很多的时候,我们采用了很多的默认的配置)。 在每一个应用程序池中接受至少有一个运行的进程来接受与处理请求,我们就将这个进程 称之为“工作进程”。当一个发送到特性的URL 请求被IIS 接受之后,请求就会被转发给正确的 应用程序池,然后被池中的工作进程处理。 一个应用程序池可以配置为运行多个工作进程,这个时候,我们就将这个情况称为“Web Garden ” (中文的意思翻译出来就变味了)。当一个池被配置称为Web Garden 的时候,请求就 会被转发给其中的一个进程处理。 说了这么多,我们就来看看一些比较深一点点的话题。 初窥IIS 的内核 正如之前我们所说的,为了使得IIS 的性能最高,那个介绍HTTP 请求的监听者运行在内核 模式中。被接受到的请求被放在对应的应用程序

您可能关注的文档

文档评论(0)

ziyouzizai + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档