Co to jest FastCGI?

FastCGI to rozszerzenie interfejsu Common Gateway Interface (CGI) opracowane przez nieistniejącą już firmę o nazwie Open Market. FastCGI jest dostępny bezpłatnie jako otwarty standard. Rozwiązuje pewne niedociągnięcia w CGI, które ograniczają wydajność.

W przeciwieństwie do CGI, FastCGI nie tworzy nowego procesu dla każdego żądania, minimalizując w ten sposób narzut związany z tworzeniem i niszczeniem procesu przy każdym otrzymaniu żądania. Narzut ten można obejść, używając interfejsów aplikacji (API), takich jak Netscape Server Application Programming Interface (NSAPI) lub Internet Server Application Programming Interface (ISAPI), ale ponieważ są one zastrzeżone, istnieje dodatkowa krzywa uczenia się i ograniczenia w obsługiwanych językach do rozważenia. Kolejną wadą CGI jest fakt, że nie można uzyskać niektórych przypadków ponownego użycia, takich jak połączenia z bazami danych lub techniki buforowania. Obsługa żądań może być nawet 30 razy szybsza przy użyciu FastCGI w porównaniu z konwencjonalnym CGI.

Dzięki FastCGI wiele żądań może być obsługiwanych przez jedno połączenie, które jest znane jako multipleksowanie. Alternatywnie można użyć wielu połączeń. Żądania są przesyłane przy użyciu protokołu FTP lub gniazd. To samo połączenie jest następnie używane do zwrócenia odpowiedzi.

Chociaż połączenie może być w tym momencie zamknięte, serwer WWW i proces nadal trwają. Daje to wiele zalet. Na przykład oznacza to, że proces serwera i aplikacji można oddzielnie zamknąć lub ponownie uruchomić.

FastCGI został pierwotnie opracowany przez Open Market i zaimplementowany w ofercie serwerów sieciowych. Interfejs można jednak wdrożyć na dowolnym serwerze, a wkrótce został on wdrożony na wielu innych branżowych serwerach sieciowych. FastCGI jest wysoce kompatybilny z obliczeniami rozproszonymi, więc aplikacja FastCGI może być uruchomiona na oddzielnym serwerze niż serwer WWW. Daje to wszystkie zalety zwiększenia dostępności systemów, poprawy skalowalności i zwiększenia bezpieczeństwa systemu, ponieważ komponenty są izolowane. Dzięki użyciu zdalnego FastCGI administracja jest mniejsza, ponieważ sieć wewnętrzna może obsługiwać uruchamianie aplikacji.

Podobnie jak aplikacja CGI może generować odpowiedź z żądania HTTP (Hypertext Transfer Protocol), podobnie FastCGI. Obsługuje również takie zadania, jak weryfikacja uwierzytelnienia i konwersja typów danych. Te zadania są obsługiwane za pomocą ról, które można dowolnie dodawać i rozszerzać.

FastCGI jest prosty do zrozumienia i działa z prawie każdym językiem programowania. Procesy są izolowane, więc serwery nie mogą ulec awarii z powodu problemów specyficznych dla aplikacji. Każda aplikacja zbudowana w środowisku FastCGI jest wsteczna ze starymi serwerami z CGI. Ponadto biblioteka aplikacji została zaprojektowana tak, aby migracja aplikacji CGI była prosta.

INNE JĘZYKI

Czy ten artykuł był pomocny? Dzięki za opinie Dzięki za opinie

Jak możemy pomóc? Jak możemy pomóc?