FastCGI for IIS enables popular application frameworks that support the FastCGI protocol to be hosted on the IIS web server in a high-performance and reliable way. FastCGI provides a high-performance alternative to the Common Gateway Interface (CGI), a standard way of interfacing external applications with Web servers that has been supported as part of the IIS feature-set since the very first release.
Make non-thread safe application frameworks run reliably on IIS
By providing a single-threaded execution environment for non-thread safe applications FastCGI greatly improves reliability of such applications on IIS in production environments.
Improve performance of CGI programs
CGI programs are executables launched by the web server for each request in order to process the request and generate dynamic responses that are sent back to the client. CGI has poor performance due to the high cost of starting and shutting down a process for each request. FastCGI addresses the performance issues inherent to CGI by providing a mechanism to reuse a single process over and over again for many requests.
Host multiple versions of application frameworks on the same server
FastCGI has very flexible configuration settings that allow hosting of multiple applications frameworks or different versions of the same application framework on the same IIS server.
- Setting of per-process environment variables
- Configurable maximum number of FastCGI processes per application pool
- Configurable maximum number of requests that FastCGI process can handle before being recycled by FastCGI
- Configurable idle timeout that can be used to optimize resource utilization on a server
- Named Pipes and TCP based communication channel between FastCGI handler and FastCGI processes