关于asp.net:什么是IIS应用程序池?

What is an IIS application pool?

什么是应用程序池?它的目的是什么?


应用程序池允许您将应用程序彼此隔离,即使它们运行在同一服务器上。这样,如果一个应用程序出错,它就不会删除其他应用程序。

此外,应用程序池允许您分离需要不同安全级别的不同应用程序。

这里有一个很好的资源:IIS和ASP.NET:应用程序池


基本上,应用程序池是通过进程边界在Web服务器中创建隔离区的一种方法,并将URL集路由到每个隔离区。请参阅以下详细信息:http://technet.microsoft.com/en-us/library/cc735247(ws.10).aspx


我排在第二位,但如果有人觉得有用的话,我想在这里增加一些细节。

短版:

IIS runs any website you configure in a process named w3wp.exe. IIS
Application pool is feature in IIS which allows each website or a part
of it to run under a corresponding w3wp.exe process. So you can run
100 websites all in a single w3wp.exe or 100 different w3wp.exe. E.g.
run 3 websites in same application pool(same w3wp.exe) to save memory
usage. ,run 2 different websites in two different application pools so
that each can run under separate user account(called application pool
identity). run a website in one application pool and a subsite
'website/app' under a different application pool.

更长版本:

每个网站或网站的一部分,您可以在应用程序池下运行。您可以使用应用程序池控制网站的一些基本设置。

  • 您希望网站在不同的w3wp.exe进程下运行。然后创建一个新的应用程序池并将其分配给网站。
  • 您希望在不同的用户帐户下运行该网站及其所有代码(例如,在管理员权限下),您可以通过更改应用程序池标识来运行它。
  • 您希望在.NET Framework 4.0或2.0下运行特定的应用程序。
  • 您希望确保网站处于32位模式,或者对w3wp.exe进程等进行计划的回收。所有这些都是从IIS应用程序池控制的。
  • 希望它有帮助!


    应用程序池是由一个工作进程或一组工作进程提供服务的一个或多个URL组成的组。任何Web目录或虚拟目录都可以分配给应用程序池。

    应用程序池中的每个应用程序共享相同的工作进程。


    假设在为他们保留的区域中游泳的人在游泳池中游泳。如果游泳的人在为他们保留的区域之外游泳,会发生什么情况,整个事情会变得一团糟。同样,IIS使用应用程序池将一个进程与另一个进程分离。


    IIS Internet信息服务是用于承载一个或多个Web应用程序的Web服务器。让我们举一个例子,微软正在维护Web服务器,我们正在运行我们的网站abc.com(基于此IIS的新闻内容)。因为,微软是一个大公司,它可能需要或者也准备好托管另一个网站,比如xyz.com(基于电子商务)。

    现在,Web服务器正在托管,即为在其单个Web服务器上运行两个网站提供内存。因此,这里的应用程序池变成了图片。abc.com有自己的规则、业务逻辑、数据等,同样适用于xyz.com。

    IIS提供了两个应用程序池(路径),可以在一个Web服务器上在自己的世界(数据)中顺利运行两个网站,而不影响每一个网站(安全性、可伸缩性)。这是IIS中的应用程序池。

    因此,根据服务器容量,您可以拥有任意数量的应用程序池


    应用程序池是由一个工作进程或一组工作进程提供服务的一个或多个URL组成的组。应用程序池用于分离共享相同配置和应用程序边界的一组IIS工作进程。应用程序池用于隔离我们的Web应用程序,以获得更好的安全性、可靠性、可用性和性能,它们保持运行而不会相互影响。


    应用程序池是由工作处理器或一组工作处理器提供服务的一组URL。

    可以存在任意数量的应用程序池。

    在IIS中,可以创建多个应用程序池。

    不同应用程序池中的应用程序在不同的工作处理器中运行。

    优点:如果一个应用程序池中发生错误,则不会影响在另一个应用程序池中运行的应用程序。


    应用程序池是使用IIS(w3wp.exe)的同一工作进程的应用程序集合。使用应用程序池的主要问题是隔离具有不同安全性问题的两个不同应用程序,并避免由于工作进程死亡而导致应用程序崩溃。


    应用程序池用于分离共享相同配置和应用程序边界的一组IIS工作进程。

    应用程序池用于隔离我们的Web应用程序,以获得更好的安全性、可靠性、可用性和性能,并在不相互影响的情况下保持运行。工作进程用作分离每个应用程序池的进程边界,以便当一个工作进程或应用程序出现问题或进行回收时,其他应用程序或工作进程不会受到影响。一个应用程序池也可以有多个工作进程。

    或者我们可以简单地说,应用程序池是由一个工作进程或一组工作进程提供服务的一个或多个URL组成的组。任何Web目录或虚拟目录都可以分配给应用程序池。这样一个网站就不会受到另一个网站的影响,如果你使用的是单独的应用程序池。

    资料来源:Interviewwiz


    应用程序池是由一个工作进程或一组工作进程提供服务的一个或多个URL组成的组。应用程序池用于分离共享相同配置和应用程序边界的一组IIS工作进程。


    应用程序池用于分离共享相同配置的一组IIS工作进程。应用程序池使我们能够隔离Web应用程序,从而提高安全性、可靠性和可用性。


    如果我创建2个应用程序池,一个应用程序池就像一磅,第一个应用程序池中有100个fish,另一个应用程序池中有200个fish,这里fish就像应用程序池中的一个应用程序。它们由工作进程管理。最好的好处是:如果1号磅的水不好,并且所有的鱼都受到影响,那么2号磅的鱼就有安全性。就像这样,如果任何应用程序池受到任何问题的影响,但应用程序池2中没有任何问题的影响,那么安全性就会得到改善,另一个好处是您提供所有必要的授权。单个应用程序池中所有应用程序的注册和权限


    application pools元素包含在您的IIS上运行的所有应用程序池的配置设置。应用程序池定义由一个或多个工作进程组成的组,这些工作进程配置有公共设置,用于向分配给该应用程序池的一个或多个应用程序提供请求。

    由于应用程序池允许一组Web应用程序共享一个或多个类似配置的工作进程,因此它们为将一组Web应用程序与服务器计算机上的其他Web应用程序隔离提供了一种方便的方法。

    进程边界将每个工作进程分隔开;因此,一个应用程序池中的应用程序问题不会影响网站或其他应用程序池中的应用程序。应用程序池显著提高了Web基础设施的可靠性和可管理性。