When you should create a new web application for your site in Microsoft SharePoint?
In Microsoft SharePoint, you have a couple of choices in order to have a new site. You can create a Web Application, a Site Collection or a Subsite.
In order to plan your information architecture in SharePoint, it is crucial to specify the type of sites you want to have.
Here is my suggestion on when you should create a new Web Application:
- Resource Throttling: every web application is an IIS website, so you can have a separate application pool for it and control hardware resource access. For example you can make the application pool process to use a certain amount of RAM on your system, or use a specific maximum amount of CPU. Moreover, inside SharePoint Central Administration, you can also do Resource Throttling based on specific SharePoint features, like List View Thresholds, …
- Service Applications: you can assign service application proxies at the Web application level. So if a specific site in your topology doesn’t require some heavy loading service applications, it is better to have a separate web application for that specific site.
Note 1: by default, when you create a Web application and want to use it, you should create a site collection and a site in order to have access.
Note 2: separate database is not a decision factor, because you can have both a database connected to a site collection or a web application
Note 3: having too many web applications with different application pools, can degrade your server performance
Note 4: if you need to do some changes in Web.Config, this file is only accessible at a web application level, it means all the site collections in a web application share a web.config
Note 5: it is always a good practice to have MySite feature in a separate web application.
Note 6: if you want to publish your site over the internet, you should have different FQDN for each web application, a proper subdomain is sufficient.
Note 7: if you are browsing different web applications and the browsers are not configured properly, you may experience multiple login requests which is annoying.