Can you summarize the following document?
        
  通用閘道器介面協議(CGI)一種對接應用程式和網路伺服器的介面協議。CGI使外部程式與Web伺服器之間互動成為可能。CGI程式執行在獨立的程序中,並對每個Web請求建立一個程序,這種方法非常容易實現,但效率很差,難以擴充套件。  CGI程式執行在獨立的程序中,並對每個Web請求建立一個程序,在結束時銷燬。這種“每個請求一個新程序”的模型使得CGI程式非常容易實現,但效率很差,難以擴充套件。在高負載情況下,用於程序建立和銷燬的作業系統開銷變得很大。此外,由於地址空間無法共享,CGI程序模型限制了資源重用方法,如重用資料庫連線、記憶體快取等。  為了解決CGI的可伸縮性缺點,開發了FastCGI,並在20世紀90年代中期首次在他們的網路伺服器產品中引入了它。Open Market最初開發FastCGI的部分原因是作為對網景公司開發網路應用程式的專有、程序內API(網景伺服器API)的競爭迴應。  雖然FastCGI最初是由Open Market開發的,但後來被其他幾家網路伺服器製造商實施。然而,它的方法與其他加速和簡化伺服器-子程式通訊的方法相競爭。像mod_perl和mod_php這樣的Apache HTTP伺服器模組幾乎是同時出現的,並且很快流行起來。截至2019年,包括CGI在內的所有這些不同方法仍在普遍使用。

  與為每個請求建立一個新的程序不同,FastCGI使用持續的程序來處理一連串的請求。這些程序由FastCGI伺服器管理,而不是web伺服器。  當進來一個請求時,web伺服器把環境變數和這個頁面請求通過一個socket比如FastCGI程序與web伺服器(都位於本地)或者一個TCP connection(FastCGI程序在遠端的server farm)傳遞給FastCGI程序。  服務傳入請求時,網路伺服器通過Unix域套接字、命名管道或傳輸控制協議(TCP)連線向FastCGI程序傳送環境變數資訊和頁面請求。響應通過相同的連線從程序返回到網路伺服器,然後網路伺服器將該響應傳遞給終端使用者。連線可能在響應結束時關閉,但是web伺服器和FastCGI服務程序都將持續,不會被銷燬。  每個單獨的FastCGI程序在其生命週期內可以處理許多請求,從而避免了每個請求程序建立和終止的開銷。併發處理多個請求可以通過幾種方式來完成:通過內部多路複用使用一個連線(即一個連線上的多個請求);通過使用多個連線;或者通過這些方法的混合。可以配置多個FastCGI伺服器,提高穩定性和可擴充套件性。  網站管理員和程式設計師可以發現,在FastCGI中將網路應用程式與網路伺服器分離比嵌入式直譯器(mod_perl、mod_php等)有許多優點。)。這種分離允許伺服器和應用程式程序獨立重啟——這是繁忙網站的一個重要考慮因素。它還能夠實現每個應用程式的託管服務安全策略,這是對ISPs和網路託管公司的一個重要要求。不同型別的傳入請求可以分發到特定的FastCGI伺服器,這些伺服器已被配置為高效地處理這些型別的請求。
快速通用閘道器介面(Fast Common Gateway Interface/FastCGI)是一種讓互動程式與Web伺服器通訊的協議。FastCGI是早期通用閘道器介面(CGI)的增強版本。