Skip to main content

Co to jest fastcgi?

FastCGI to przedłużenie wspólnego interfejsu bramy (CGI), który został opracowany przez nieistniejącą firmę o nazwie Open Market.FastCGI jest swobodnie dostępny jako standard otwarty.Zajmuje się pewnymi niedociągnięciami 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 koszty ogólne tworzenia i zniszczenia procesu za każdym razem, gdy otrzymano żądanie.Ten koszty ogólne można obejść za pomocą interfejsów aplikacji (interfejsy API), takich jak interfejs programowania aplikacji Netscape Server (NSAPI) lub interfejs programowania aplikacji serwera internetowego (ISAPI), ale ponieważ są one zastrzeżone, istnieje dodatkowa krzywa uczenia się i ograniczenia w językach obsługiwanychdo rozważenia.Kolejnym niedociągnięciem CGI jest fakt, że nie można uzyskać niektórych przypadków ponownego użycia, takich jak połączenia z bazami danych lub technik buforowania.Obsługa żądań może być nawet 30 razy szybciej za pomocą FastCGI w stosunku do konwencjonalnego CGI.

W przypadku FastCGI wiele żądań można obsługiwać przez jedno połączenie, które jest znane jako multipleksowanie.Alternatywnie można użyć wielu połączeń.Żądania są przesyłane za pomocą protokołu transferu plików (FTP) lub gniazd.To samo połączenie jest następnie używane do zwrotu odpowiedzi.

Chociaż w tym momencie połączenie może być zamknięte, serwer WWW i proces nadal utrzymują się.To oferuje wiele zalet.Na przykład oznacza to, że serwer i proces aplikacji można wyłączyć lub ponownie uruchomić osobno.

FastCGI został pierwotnie opracowany przez otwarty rynek i zaimplementowany w ofercie serwera WWW.Interfejs można jednak zaimplementować na dowolnym serwerze i wkrótce został wprowadzony na wiele innych serwerów branżowych.FASTCGI jest wysoce kompatybilny z rozproszonym obliczeniami, więc aplikacja FastCGI może działać na osobnym serwerze do serwera internetowego.Oferuje to wszystkie zalety zwiększenia dostępności systemów, poprawy skalowalności i zwiększenia bezpieczeństwa systemu, ponieważ komponenty są izolowane.Korzystając z zdalnego FASTCGI, istnieje mniej administracji, ponieważ sieć wewnętrzna może obsłużyć działanie aplikacji.

Tak jak aplikacja CGI może wygenerować odpowiedź z żądania hipertekstowego protokołu transferu (HTTP), tak też może FASTCGI.Obsługuje również zadania, takie jak weryfikacja uwierzytelniania i konwersja typów danych.Zadania te są obsługiwane przy użyciu ról, które można dodać i rozszerzyć swobodnie.

FastCGI jest prosty do zrozumienia i będzie działał z prawie każdym językiem programowania.Procesy są izolowane, więc serwerów nie mogą być rozbite przez problemy specyficzne dla aplikacji.Każda aplikacja zbudowana z frameworkiem FASTCGI jest wstecz ze starymi serwerami z CGI.Ponadto biblioteka aplikacji została zaprojektowana w celu ułatwienia migracji aplikacji CGI.