What is an IIS application pool?

asp.netIisApplication Pool

asp.net Problem Overview


What exactly is an application pool? What is its purpose?

asp.net Solutions


Solution 1 - asp.net

Application pools allow you to isolate your applications from one another, even if they are running on the same server. This way, if there is an error in one app, it won't take down other applications.

Additionally, applications pools allow you to separate different apps which require different levels of security.

Here's a good resource: IIS and ASP.NET: The Application Pool

Solution 2 - asp.net

I second the top voted answer, but feel like adding little more details here if anyone finds it useful.

short version:

> 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.

Longer version:

Every website or a part of the website,you can run under an application pool.You can control some basic settings of the website using an application pool.

  1. You would like the website to run under a different w3wp.exe process.Then create a new application pool and assign that to the website.
  2. You would like to run the website and all it's code under a different user account(e.g under Admin privileges),you can run do that by changing Application Pool Identity.
  3. You would like to run a particular application under .net framework 4.0 or 2.0.
  4. You would like to make sure the website in 32 bit mode or have a scheduled recycle of the w3wp.exe process etc.All such things are controlled from iis application pool.

Solution 3 - asp.net

Basically, an application pool is a way to create compartments in a web server through process boundaries, and route sets of URLs to each of these compartments. See more info here: http://technet.microsoft.com/en-us/library/cc735247(WS.10).aspx

Solution 4 - asp.net

An application pool is a group of one or more URLs that are served by a worker process or set of worker processes. Any Web directory or virtual directory can be assigned to an application pool.

Every application within an application pool shares the same worker process.

Solution 5 - asp.net

Assume scenario where swimmers swim in swimming pool in the areas reserved for them.what happens if swimmers swim other than the areas reserved for them,the whole thing would become mess.similarly iis uses application pools to seperate one process from another.

Solution 6 - asp.net

IIS-Internet information Service is a web server used to host one or more web application . Lets take any example here say Microsoft is maintaining web server and we are running our website abc.com (news content based)on this IIS. Since, Microsoft is a big shot company it might take or also ready to host another website say xyz.com(ecommerce based).

Now web server is hosting i.e providing memory to run both websites on its single web server.Thus , here application pools come into picture . abc.com has its own rules, business logic , data etc and same applies to xyz.com.

IIS provides two application pools (path) to run two websites in their own world (data) smoothly in a single webserver without affecting each ones matter (security, scalability).This is application pool in IIS.

So you can have any number of application pool depending upon on servers capacity

Solution 7 - asp.net

An application pool is a group of urls served by worker processors or set of worker processors.

There can exist any number of application pools.

In IIS it is possible to create more than one application pool.

An application in different application pool runs in different worker processors.

Advantage: If an error occurred in one application pool will not effect the applications running in another application pool.

Solution 8 - asp.net

An Application pool is a collection of applications which uses the same worker process of IIS (w3wp.exe). Primary concern of using Application pool is to isolate two different applications with different security concerns and also to avoid crashing of applications due to worker process death.

Solution 9 - asp.net

An application pool is a group of one or more URLs that are served by a worker process or set of worker processes. Application pools are used to separate sets of IIS worker processes that share the same configuration and application boundaries. Application pools are used to isolate our web application for better security, reliability, availability and performance, and they keep running without impacting each other.

Solution 10 - asp.net

Application pools are used to separate sets of IIS worker processes that share the same configuration and application boundaries.

Application pools used to isolate our web application for better security, reliability, and availability and performance and keep running without impacting each other . The worker process serves as the process boundary that separates each application pool so that when one worker process or application is having an issue or recycles, other applications or worker processes are not affected. One Application Pool can have multiple worker process Also.

Or we can simply say that, An application pool is a group of one or more URLs that are served by a worker process or set of worker processes. Any Web directory or virtual directory can be assigned to an application pool. So that one website cannot be affected by other, if u used separated application pool.

Source : Interviewwiz

Solution 11 - asp.net

An application pool is like a pond, if I create 2 application pools, first application pool has 100 fishes and another application pool has 200 fishes, here fish is like an application in application pool. They are managed by worker processes. Best advantage is: if pond number-1 has bad water and cases all fish are effected then there is security of fish in pond number-2. Like this if any application pool is affected by any problem but there is not any effect of this problem in application pool 2 so security improves, and another benefit is that is you provide all the necessary authentication and rights to all applications in a single application pool.

Solution 12 - asp.net

An application pool is a group of one or more URLs that are served by a worker process or set of worker processes. Application pools are used to separate sets of IIS worker processes that share the same configuration and application boundaries.

Solution 13 - asp.net

Application pools are used to separate set of IIS worker processes that share the same configuration. Application pools enable us to isolate our web application for better security, reliability, and availability

Solution 14 - asp.net

The application Pools element contains configuration settings for all application pools running on your IIS. An application pool defines a group of one or more worker processes, configured with common settings that serve requests to one or more applications that are assigned to that application pool.

Because application pools allow a set of Web applications to share one or more similarly configured worker processes, they provide a convenient way to isolate a set of Web applications from other Web applications on the server computer.

Process boundaries separate each worker process; therefore, application problems in one application pool do not affect Web sites or applications in other application pools. Application pools significantly increase both the reliability and manageability of your Web infrastructure.

Solution 15 - asp.net

application pool provides isolation for your application. and increase the availability of your application because each pool run in its own process so an error in one app won't cause other application pool. And we have shared pool that hosts several web applications running under it and dedicated pool that has single application running on it.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionXaisoftView Question on Stackoverflow
Solution 1 - asp.netEnderView Answer on Stackoverflow
Solution 2 - asp.netRohithView Answer on Stackoverflow
Solution 3 - asp.netCesarGonView Answer on Stackoverflow
Solution 4 - asp.netPoornima SView Answer on Stackoverflow
Solution 5 - asp.netuser887120View Answer on Stackoverflow
Solution 6 - asp.netHameed SyedView Answer on Stackoverflow
Solution 7 - asp.netkiranpvnView Answer on Stackoverflow
Solution 8 - asp.netPreetham Kumar PView Answer on Stackoverflow
Solution 9 - asp.netSreeView Answer on Stackoverflow
Solution 10 - asp.netPravin PatelView Answer on Stackoverflow
Solution 11 - asp.netvivekView Answer on Stackoverflow
Solution 12 - asp.netshintoView Answer on Stackoverflow
Solution 13 - asp.netaamir sajjadView Answer on Stackoverflow
Solution 14 - asp.netMahesh KalyankarView Answer on Stackoverflow
Solution 15 - asp.netMohammad Zubair AkramiView Answer on Stackoverflow