發刊日期:2001-08-29 
發刊期數:第9期  發刊頻率:不定期發送  發行量:13  發行者:cup 
推薦本報給好朋友
寄件人暱稱或姓名   寄件人E-mail   收件人暱稱或姓名   收件人E-mail  
+ + +
網站技術筆記
[IT前線]影響Web Server語言效能之因素

[IT前線]影響Web Server語言效能之因素

1.直譯式語言 vs. 編譯式語言

各種電腦語言都必須轉成可執行檔(機械碼)才能被CPU所接受執行。所謂直譯式語言,就是這個轉換的動作,是在程式執行時一行一行的轉換;而編譯式的語言則是將整個程式轉成機械碼後才加以執行。在執行速度方面當然是以編譯式的語言執行較為快速。

直譯式語言:C、C++
編譯式語言:ASP-VBScript、PHP、PERL
介於兩者之間:JAVA,要執行JAVA語言的程式,必須先編譯成中間瑪(bytecode),然後執行時再由JAVA直譯器去執行。效能方面理論上是介於直譯式語言跟編譯式語言之間。不過在開發上導是兼具了直譯式語言的缺點跟編譯式語言的缺點,沒辦法像直譯式語言一樣方便的執行開發,也沒辦法像編譯式語言有較佳的速度。

2.嵌入式設計與獨立式設計

這邊所謂的嵌入式設計,並不是語言的語法嵌入在HTML之中,而是只有直譯式的語言會有這樣的設計,將直譯器常駐在記憶體中。這樣一來執行程式的時候就不必先執行直譯器,因為直譯器通常很大,會吃掉很多系統資源。尤其是跑聊天室之類的程式,幾乎是一直重複執行又結束程式,如果能使用嵌入式的設計,就可以減少這部分的固定時間跟耗費的資源(overhead)。

ASP的直譯器是跟IIS一起載入記憶體中。PHP跟PERL則可以自行選擇是不是要跟Apache一起載入記憶體中(mod_perl & mod_php)。JAVA的Servlet標準則是一定是使用預先載入的設計。

P.S. CGI(Common Gateway Interface)是一種串聯各種程式語言跟Web的介面,各種語言都可以透過這個介面變成可以撰寫Web程式的介面。CGI採用的方式就是獨立式的設計,不管是直譯式還是編譯式的語言,都是在執行的時候才去啟動直譯器或程式。

3.語言本身的架構與速度

目前來說,PHP跟PERL的原始執行速度是相仿,所以一定要儘量採用嵌入式的安裝方式,以增加執行Web程式的速度。ASP語言本身的執行速度會比PHP跟PERL來得慢,不過有於是採用嵌入式的設計,因此一開始有很多數據宣稱是最快的Web程式語言。PHP與PERL現在都已經有嵌入式的設計,效能也勝過ASP-VBScript。

至於Java,由於是採用介於編譯跟直譯之間的方式,執行的速度跟你所採用的Java Engine有很大的關聯。PHP跟PERL、ASP則大多用一樣的直譯器。
我的網站:

http://www.webforest.com
網路森林虛擬中心 您的PHP&MYSQL提供者

http://www.itaiwan.net
逸思資訊社
   
 
<< 網友票選 >> 您對於這份電子報紙評價是?
有夠讚 不錯啦 普普說 蠻爛的 爛到最高點 
版權歸發行者所有,未經確認授權,嚴禁轉貼節錄
PC home ePaper 個人電子報提供電子報代理發行
發行內容不代表本站立場,相關權責請參考 聲明啟事
查詢 / 取消訂閱更改信箱使用上問題請來信回應報主創辦電子報