IIS, that is the abbreviation of “Internet Information Services”, is a web service that runs on Windows systems. We have explained about web servers completely in an earlier article but to explain shortly, we can say that a web server is a server software or hardware that is in charge of taking requests from browsers and giving them the needed files of the web page, they want to visit. Some web servers run on Linux and some of them run on Windows. IIS is one of the most famous web servers that run on Windows OS.
How does IIS work?
There are two main process models for web servers:
- Handling all requests on a single thread
The first one means that even if your CPU has lots of free threads, the web server processes all the requests with one single thread and does other things with other threads.
The second one means that when a web server receives a new request, the web Service associates that request with a thread from the thread pool and executes it. The thread pool is a place where all free threads wait there until they are needed to process a request. In another word, each request will be processed by a different thread.
So, the web server (IIS) gets a request, processes it and if everything goes well, it will respond to the client. The protocols that IIS and all the other web servers use to communicate are, HTTP or HTTPs.
IIS has a lot of features
- It is used to host ASP.NET web applications (open-source server-side web application framework designed for web development to produce dynamic web pages developed by Microsoft.)
- It is used to host static websites. (a Website that contains web pages with fixed contents.)
- Built-in authentication options such as Basic, ASP.NET, and Windows auth.
- Application pool: 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, application pools allow you to separate different apps that require different levels of security.
- Remote management: IIS can also be managed via the CLI or using PowerShell.
IIS has different versions that the features might be more or less for each of them.
Hope this article was useful to you!