FastCGI on Common Gateway Interface’i (CGI) laiendus, mille töötas välja nüüdseks kadunud ettevõte nimega Open Market. FastCGI on avatud standardina vabalt saadaval. See kõrvaldab teatud CGI puudused, mis piiravad jõudlust.
Erinevalt CGI-st ei loo FastCGI iga päringu jaoks uut protsessi, vähendades seega protsessi loomise ja hävitamise kulusid iga kord, kui päring võetakse vastu. Sellest üldkuludest saab mööda hiilida rakendusprogrammide liideste (API-de), nagu Netscape’i serveri rakendusliidese (NSAPI) või Interneti-serveri rakendusliidese (ISAPI) abil, kuid kuna need on patenteeritud, on toetatud keeltes täiendav õppimiskõver ja piirangud. arvesse võtma. Teine CGI puudus on asjaolu, et teatud juhtumeid ei ole võimalik taaskasutamiseks hankida, näiteks ühendusi andmebaasidega või vahemällu salvestamise tehnikaid. FastCGI-d kasutades võib taotluste käsitlemine tavapärase CGI-ga võrreldes olla kuni 30 korda kiirem.
FastCGI abil saab ühe ühenduse kaudu käsitleda mitut päringut, mida nimetatakse multipleksimiseks. Teise võimalusena saab kasutada mitut ühendust. Taotlused edastatakse failiedastusprotokolli (FTP) või pesade kaudu. Seejärel kasutatakse vastuse tagastamiseks sama ühendust.
Kuigi ühendus võib sel hetkel olla suletud, püsivad veebiserver ja protsess endiselt. See pakub palju eeliseid. Näiteks tähendab see, et serveri ja rakendusprotsessi saab eraldi sulgeda või taaskäivitada.
FastCGI töötas algselt välja Open Market ja rakendas selle veebiserveri pakkumises. Liidest saab rakendada igas serveris ja see võeti peagi kasutusele ka paljudes teistes tööstusharu veebiserverites. FastCGI ühildub suurel määral hajutatud andmetöötlusega, nii et FastCGI rakendus võib töötada veebiserveri jaoks eraldi serveris. See pakub kõiki eeliseid süsteemide kättesaadavuse parandamiseks, skaleeritavuse parandamiseks ja süsteemi turvalisuse suurendamiseks, kuna komponendid on isoleeritud. Kaug-FastCGI-d kasutades on vähem haldust, sest sisevõrk saab hakkama rakenduste käitamisega.
Nii nagu CGI-rakendus võib genereerida vastuse hüperteksti edastusprotokolli (HTTP) päringule, suudab ka FastCGI. Samuti tegeleb see selliste ülesannetega nagu autentimise kontrollimine ja andmetüüpide teisendamine. Nende ülesannete lahendamiseks kasutatakse rolle, mida saab vabalt lisada ja laiendada.
FastCGI-st on lihtne aru saada ja see töötab peaaegu kõigi programmeerimiskeeltega. Protsessid on isoleeritud, nii et serverid ei saa rakendusespetsiifiliste probleemide tõttu krahhi. Kõik FastCGI raamistikuga loodud rakendused on vanade CGI-d kasutavate serveritega tagasi. Lisaks on rakendusteek loodud CGI-rakenduste migratsiooni lihtsaks muutmiseks.