生根于自由的土壤-FastCGI之二
發(fā)表時間:2024-06-11 來源:明輝站整理相關軟件相關文章人氣:
[摘要]FastCGI的優(yōu)點 我們知道,CGI是不能利用內(nèi)存來作為緩存的,因為它為每一個請求運行一次應用程序,并在完成任務后退出。而 FastCGI可以很有效地利用內(nèi)存來作緩存,大大地提高了它處理請求的性能。單獨的FastCGI應用程序和 CGI相比,也許并沒有很好地利用緩存,而一旦FastCGI被設計...
FastCGI的優(yōu)點
我們知道,CGI是不能利用內(nèi)存來作為緩存的,因為它為每一個請求運行一次應用程序,并在完成任務后退出。而 FastCGI可以很有效地利用內(nèi)存來作緩存,大大地提高了它處理請求的性能。單獨的FastCGI應用程序和 CGI相比,也許并沒有很好地利用緩存,而一旦FastCGI被設計成多線程,就可以運行并發(fā)處理多請求的應用程序進程,這樣多線程就可以共享進程內(nèi)存而訪問同一緩存。
FastCGI的另一大優(yōu)點是它可以利用分布式網(wǎng)絡系統(tǒng)來完成大規(guī)模的系統(tǒng)集成。一個網(wǎng)站,要完成用戶的交互性要求,至少要具備電子郵件、BBS和聊天室這三大功能,考慮到數(shù)據(jù)安全性和數(shù)據(jù)庫容量等因素,很少有網(wǎng)站把所有的數(shù)據(jù)都放在同一主機上。大家知道,由于進程環(huán)境原因,服務器只能調(diào)用本機的CGI應用程序,這就給多主機的分布式系統(tǒng)帶來局限性。而FastCGI應用程序不從進程環(huán)境中獲取CGI變量,而是在FastCGI 應用程序和服務器之間建立一個“全雙工”的連接,傳遞環(huán)境信息、STDIN、STDOUT和STDERR。這樣我們就可以把FastCGI應用程序放置在另外的主機上,利用TCP/IP協(xié)議與主服務器遠程連接。在主服務器對FastCGI應用程序發(fā)出請求時可以像本地機一樣作出響應。這樣做的好處是:
1.可以擴大網(wǎng)路系統(tǒng)的規(guī)模
2.可以減輕同一服務器的負載
3.多服務器可共享同一FastCGI應用程序。