實戰(zhàn) FastCGI_1.克服 CGI 的瓶頸(3)
發(fā)表時間:2024-02-08 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]1.3 更好的方法 - FastCGI 如果你正飽受 CGI 效率不佳之苦,又不想受限于 NSAPI 及 ISAPI ,也沒有大筆銀子去買昂貴的 Application Server,我建議你試試看 FastCGI。 不同于 NSAPI 及 ISAPI 以及其它的網(wǎng)頁服務(wù)器語言 (如 AS...
1.3 更好的方法 - FastCGI
如果你正飽受 CGI 效率不佳之苦,又不想受限于 NSAPI 及 ISAPI ,也沒有大筆銀子去買昂貴的 Application Server,我建議你試試看 FastCGI。
不同于 NSAPI 及 ISAPI 以及其它的網(wǎng)頁服務(wù)器語言 (如 ASP, PHP3, mod_perl),F(xiàn)astCGI 比較類似 CGI,它只是一個網(wǎng)站應(yīng)用程序設(shè)計的規(guī)格,因此先天上不受任何網(wǎng)站服務(wù)器平臺,操作系統(tǒng)平臺,以及開發(fā)語言的限制,但又能大幅改善 CGI 效率不良的問題。FastCGI 的特色如下:
1. FastCGI 像是一個常駐 (long-live) 型的 CGI,它可以一直執(zhí)行著,只要激活后,不會每次都要花費時間去 fork 一次 (這是 CGI 最為人詬病的 fork-and-execute 模式)。
2. FastCGI 可在任何平臺上使用,Netscape Enterprise 及 IIS 都有 FastCGI 的模塊可供使用,阿帕契 (Apache,以及利用 Apache 衍生出做的服務(wù)器) 上也有 mod_fastcgi 可用。
3. FastCGI 支持 C/C++,Perl,Tcl,Java,Python 等程序語言。
4. FastCGI 的應(yīng)用程序亦兼容于 CGI。即 FastCGI 的應(yīng)用程序也可以當成 CGI 來執(zhí)行。
5. 現(xiàn)有的 CGI 程序要改寫成 FastCGI 非常簡單,最少可能只需要多加入三行程序代碼。
6. FastCGI 的偵錯方式與 CGI 大同小異,只要帶入程序所需的環(huán)境變量及參數(shù),即可在命令列模式執(zhí)行或偵錯。
7. FastCGI 應(yīng)用程序的寫作方式與 CGI 類似,除了幾項原則要特別注意外,F(xiàn)astCGI 的寫作方式跟 CGI 幾乎一樣,與學習 Web Server API 比較起來, FastCGI 簡單多了。
8. FastCGI 支授分布式運算 (distributed computing),即 FastCGI 程序可以在網(wǎng)站服務(wù)器以外的主機上執(zhí)行并且接受來自其它網(wǎng)站服務(wù)器來的請求。
看到 FastCGI 這些特色后,是否躍躍欲試呢。下一章將介紹如何在 Apache 服務(wù)器上安裝 FastCGI 的步驟。