Wat is een FastCGI?

FastCGI is een uitbreiding van Common Gateway Interface (CGI) die is ontwikkeld door een inmiddels ter ziele gegane onderneming genaamd Open Market. FastCGI is gratis beschikbaar als een open standaard. Het verhelpt bepaalde tekortkomingen in CGI die de prestaties beperken.

In tegenstelling tot CGI creëert FastCGI geen nieuw proces voor elke aanvraag, waardoor de overhead van het maken en vernietigen van processen wordt geminimaliseerd telkens wanneer een aanvraag wordt ontvangen. Deze overhead kan worden omzeild door Application Program Interfaces (API's) zoals Netscape Server Application Programming Interface (NSAPI) of Internet Server Application Programming Interface (ISAPI), maar omdat deze bedrijfseigen zijn, zijn er een extra leercurve en beperkingen in ondersteunde talen te worden overwogen. Een andere tekortkoming van CGI is het feit dat bepaalde gevallen voor hergebruik niet kunnen worden verkregen, zoals verbindingen met databases of cachetechnieken. Verwerking van aanvragen kan tot 30 keer sneller zijn met FastCGI dan conventionele CGI.

Met FastCGI kunnen meerdere aanvragen worden afgehandeld via een enkele verbinding, ook wel multiplexing genoemd. Als alternatief kunnen meerdere verbindingen worden gebruikt. Verzoeken worden verzonden met behulp van File Transfer Protocol (FTP) of sockets. Dezelfde verbinding wordt vervolgens gebruikt om het antwoord te retourneren.

Hoewel de verbinding op dit moment mogelijk wordt verbroken, blijven de webserver en het proces bestaan. Dit biedt vele voordelen. Dit betekent bijvoorbeeld dat het server- en applicatieproces afzonderlijk kan worden afgesloten of opnieuw kan worden gestart.

FastCGI werd oorspronkelijk ontwikkeld door Open Market en geïmplementeerd in haar webserveraanbod. De interface kan echter op elke server worden geïmplementeerd en is al snel op een aantal andere webservers in de branche geïnstalleerd. FastCGI is zeer compatibel met gedistribueerd computergebruik, dus een FastCGI-toepassing kan op een afzonderlijke server voor de webservice worden uitgevoerd. Dit biedt alle voordelen van het verbeteren van de beschikbaarheid van systemen, het verbeteren van de schaalbaarheid en het vergroten van de systeembeveiliging omdat de componenten geïsoleerd zijn. Door FastCGI op afstand te gebruiken, is er minder administratie omdat het interne netwerk de uitvoering van applicaties aankan.

Net zoals een CGI-toepassing een reactie van een Hypertext Transfer Protocol (HTTP) -verzoek kan genereren, kan FastCGI dat ook. Het behandelt ook taken zoals het verifiëren van authenticatie en het converteren van gegevenstypen. Deze taken worden afgehandeld met rollen, die vrij kunnen worden toegevoegd en uitgebreid.

FastCGI is eenvoudig te begrijpen en werkt met bijna elke programmeertaal. Processen zijn geïsoleerd, dus servers kunnen niet worden gecrasht door applicatiespecifieke problemen. Elke applicatie gebouwd met het FastCGI-framework is achterlijk met oude servers waarop CGI draait. Bovendien is de applicatiebibliotheek ontworpen om de migratie van CGI-applicaties eenvoudig te maken.

ANDERE TALEN

heeft dit artikel jou geholpen? bedankt voor de feedback bedankt voor de feedback

Hoe kunnen we helpen? Hoe kunnen we helpen?