1. 程式人生 > >三種動態網頁技術的簡要分析

三種動態網頁技術的簡要分析

動態網頁可以根據使用者的選擇、點選、輸入等操作而迅速的響應和動態的改變。動態網頁技術可以非常方便地處理使用者的請求,在Web開發中它們的地位是非常重要的。目前比較流行的動態網頁技術有JSP、ASP、PHP等,下面分別簡要介紹這些技術的特點。

1 ASP技術

ASP技術是基於.NET平臺的一種動態網頁技術。它有非常強大的後臺處理能力,但卻有一些安全性、穩定性、跨平臺性的問題。它的原理為:通過伺服器端的直譯器將使用者請求的ASP檔案進行處理,然後將生成的HTML頁面傳輸到客戶端顯示。直譯器可以呼叫功能強大的COM元件去進行非常多的工作。因此,ASP的功能被無限放大了。

  • ASP的優勢

容易學。ASP的內嵌程式碼是Basic語言,這種語言很容易掌握,並且學的人很多。Microsoft開發的語言有很多聯機手冊,並且市面上也有很多的相關書籍,方便開發人員的學習和深入。

容易安裝。裝好Windows系統後,只要安裝了IIS,就可以使用ASP語言了,不用像Java一樣花很大功夫去配置。

效率高。在訪問量比較低的情況下,ASP處理的效率相當高。

  • ASP的弱勢

雖然使用COM元件極大地擴充套件了ASP的功能,但是Windows系統的缺陷可能會導致使用ASP技術建立的網站更容易受到攻擊,以至於癱瘓。

編譯的時間長。

無法實現跨作業系統的使用。

無法使用它建立大型的網站,因為ASP技術不能實現完全的叢集和負載均衡。

2、PHP技術

PHP語言是HTML內嵌式的語言,這一點類似於ASP。不過,它的語法混合了C、Java、Perl等語言的特點。PHP語言的用途也非常廣,它支援眾多的資料庫,如Microsoft SQL Server、MySQL、Sybase、Oracle等。它與HTML可以有很好的相容:在PHP指令碼中可以直接加入HTML標籤,在HTML標籤中也可以加入PHP指令碼。從而它可以實現更強的頁面控制。

  • PHP的優勢

PHP可以跨平臺,並且具有更好的資料庫互動能力。PHP在UNIX/Linux平臺下執行的效能很好。

由於PHP可以與Apache,以及其他的一些平臺以靜態編譯的方式結合起來。所以它可以很大程度地優化CPU和記憶體的使用。

PHP有很好的安全性。

  • PHP的弱勢

資料庫介面不規範。雖然PHP支援眾多的資料庫,但是對每種資料庫介面的開發都不同。同樣的資料庫操作在不同的資料庫中都要用不同的語言來實現,從而極大地加重了開發者的負擔。

使用起來複雜。由於實現某些功能,一般是靠某種拓展模組來實現的。而每種拓展木塊都有不同的外部應用庫來實現,這樣在編譯時相當複雜。

缺少企業級應用的支援。由於開發大型Web應用的介面的數量有限而導致的。

3、JSP技術

JSP技術在基於java的平臺上廣泛地使用,是進行Java web開發的一種核心元件。JSP頁面由HTML程式碼和嵌入在其中的Java指令碼組成。當瀏覽器使用者請求某個JSP頁面時,Web伺服器在伺服器端對所請求的JSP檔案進行編譯處理,執行其中的Java指令碼,並把生成的HTML頁面返回到瀏覽器端顯示。Servlet技術是JSP技術的基礎,實際開發中往往是二者聯合使用。由於基於Java平臺,JSP有Java技術面向物件、平臺無關、安全等特點。

  • JSP的優勢

一次編寫,到處執行。這一點JSP比PHP技術更有優勢,在不同的系統平臺上執行,程式碼不用做任何修改。

被多平臺支援。JSP幾乎可以在任何的平臺上進行開發,並且可以在任何的平臺上部署和執行。這一點是ASP和PHP所無法企及的。

後臺強大的功能。由於JSP後臺有Java語言和Servlet的支援,在後臺可以進行復雜的、功能強大的業務邏輯處理。並且可以實現多臺伺服器端叢集和負載均衡,從而更加適應企業級的應用。

有很多優秀的IDE幫助開發,如Eclipse、IntelliJ IDEA等。

  • JSP的弱勢

正式由於跨平臺和伺服器叢集等一些優點,同時帶來了其產品過於複雜的缺點。

編譯後的Class檔案執行時,記憶體的使用率比較低。