phpaspjsp份額,phpaspjsp的比較

本文目錄一覽:

jsp asp php .net哪個是今後網站建設的主流技術,另外現在這幾種技術在網站中的份額,謝了。

現在主流的網站開發語言無外乎asp、php、asp.net、jsp等。

ASP佔著價錢便宜,操作方便的優勢一直在小型網站佔有一定份額;一般大型網站公司管理系統用大部分是ASP.NET;政府機關網站很多是JSP;PHP前期處於中間半開不紅狀態,這幾年的份額比例也在逐漸上漲中,前景很大啊。

其實語言都是想通的,建議先學ASP。ASP模型會了,後面幾個也就不難了。

ASP(VBS,VCS,JS)

優點:

1. 無需編譯

2. 易於生成

3. 獨立於瀏覽器

4. 面向對象

5. 與任何ActiveX scripting 語言兼容

6. 源程序碼不會外漏

7. 價錢便宜

缺點:

1、Windows本身的所有問題都會一成不變的也累加到了它的身上。安全性、穩定性、跨平台性都會因為與NT的捆綁而顯現出來。

2、ASP由於使用了COM組件所以它會變的十分強大,但是這樣的強大由於Windows NT系統最初的設計問題而會引發大量的安全問題。只要在這樣的組件或是操作中一不注意,哪么外部攻擊就可以取得相當高的權限而導致網站癱瘓或者數據丟失。

3、由於ASP還是一種Script語言所沒除了大量使用組件外,沒有辦法提高其工作效率。它必須面對即時編繹的時間考驗,同時我們還不知其背後的組件會是一個什麼樣的狀況。

4、無法實現跨操作系統的應用。當然這也是微軟的理由之一,只有這樣才能發揮ASP最佳的能力。可是我卻認為正是Windows限制了ASP,ASP的概念本就是為一個能讓系統運行於一個大的多樣化環境而設計的。

5、還無法完全實現一些企業級的功能:完全的集群、負載均橫。

6、版權問題

ASP.NET(ASP+VB.NET/C#)

優點:

1. 簡潔的設計和實施。

2. 語言靈活,並支持複雜的面向對象特性。

3. 開發環境。

缺點:

1、VS軟件兼容問題

2、版權問題

JSP(ASP+JAVA)

優點:

1、 一處編寫隨處運行。

2、 系統的多台平支持。

3、 強大的的可伸縮性。

4、 多樣化和功能強大的開發工具支持。

缺點:

1、 與ASP一樣,Java的一些優勢正是它致命的問題所在。

2、 缺少系統性的資料。

3、 速度超慢

PHP(ASP VCS進化過來的語言,結合了C++和自身的語法)

優點:

1、 一種能快速學習、跨平台、有良好數據庫交互能力的開發語言。

2、 簡單輕便,易學易用。

3、 與Apache及其它擴展庫結合緊密。

4、 良好的安全性。

缺點:

1、 數據庫支持的極大變化。

2、 不適合應用於大型電子商務站點

3、 安裝複雜。

4、 缺少正規的商業支持。

5、 無法實現商品化應用的開發。

PHP JSP ASP.NET ASP 市場份額佔比如何?

PHP是最多的,不用質疑。其次是ASP,再次是JSP,再到ASP.NET。

▌No

戀Σ愛

說JSP是雞肋我很不認同。試問有多少著名銀行的網站在線支付的那一塊不是用JSP做的。.net我是沒見的。大公司不知道你是指那些大公司?淘寶,百度,GOOGLE,騰訊,新浪,豆瓣沒有一個是用.net~~~

CSDN,噹噹網的確是用DOTNET。但你說那一個網站速度快又漂亮?但不要跟我講“世界第一的微軟是用DOTNET。”那是一句廢話。

我覺得部份公司之所以用.net是因為開發相對容易簡單吧,對於個別需求針對性強的基本上都是用開源的代碼來做。

Asp、Php、Jsp區別?

ASP全名Active Server Pages,是一個WEB服務器端的開發環境,利用它可以產生和執行動態的、互動的、高性能的WEB服務應用程序。ASP採用腳本語言VBScript(Java script)作為自己的開發語言。

PHP是一種跨平台的服務器端的嵌入式腳本語言。它大量地借用C,Java和Perl語言的語法, 並耦合PHP自己的特性,使WEB開發者能夠快速地寫出動態產生頁面。它支持目前絕大多數數據庫。還有一點,PHP是完全免費的,不用花錢,你可以從PHP官方站點(http: //)自由下載。而且你可以不受限制地獲得源碼,甚至可以從中加進你自己需要的特色。

JSP是Sun公司推出的新一代網站開發語言,Sun公司藉助自己在Java上的不凡造詣,將Java從Java應用程序和Java Applet之外,又有新的碩果,就是JSP,Java Server Page。JSP可以在Serverlet和JavaBean的支持下,完成功能強大的站點程序。

三者都提供在 HTML代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。但JSP代碼被編譯成 Servlet並由Java虛擬機解釋執行,這種編譯操作僅在對JSP頁面的第一次請求時發生。在ASP 、PHP、JSP環境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的 HTML頁面只依賴於Web服務器,而ASP 、PHP、JSP頁面需要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被重新嵌入到HTML代碼中,然後一起發送給瀏覽器。ASP 、PHP、JSP三者都是面向Web服務器的技術,客戶端瀏覽器不需要任何附加的軟件支持。

技術特點

ASP:

1. 使用VBScript 、 JScript等簡單易懂的腳本語言,結合HTML代碼,即可快速地完成網站的應用程序。

2. 無須compile編譯,容易編寫,可在服務器端直接執行。

3. 使用普通的文本編輯器,如Windows的記事本,即可進行編輯設計。

4. 與瀏覽器無關(Browser Independence), 客戶端只要使用可執行HTML碼的瀏覽器,即可瀏覽Active Server Pages所設計的網頁內容。Active ServerPages 所使用的腳本語言(VBScript 、 Jscript)均在WEB服務器端執行,客戶端的瀏覽器不需要能夠執行這些腳本語言。

5.Active Server Pages能與任何ActiveX scripting語言兼容。除了可使用VB Script或JScript語言來設計外,還通過plug-in的方式,使用由第三方所提供的其它腳本語言,譬如REXX 、Perl 、Tcl等。腳本引擎是處理腳本程序的COM(Component Object Model) 對象。

6. 可使用服務器端的腳本來產生客戶端的腳本。

7. ActiveX Server Components(ActiveX 服務器組件 )具有無限可擴充性。可以使用Visual Basic 、Java 、Visual C++ 、COBOL等程序設計語言來編寫你所需要的ActiveX Server Component 。

PHP:

1?數據庫連接

PHP可以編譯成具有與許多數據庫相連接的函數。PHP與MySQL是現在絕佳的群組合。你還可以自己編寫外圍的函數去間接存取數據庫。通過這樣的途徑當你更換使用的數據庫時,可以輕鬆地修改編碼以適應這樣的變化。PHPLIB就是最常用的可以提供一般事務需要的一系列基庫。但PHP提供的數據庫接口支持彼此不統一,比如對Oracle, MySQL,Sybase的接口,彼此都不一樣。這也是PHP的一個弱點。

JSP:

1?將內容的產生和顯示進行分離

使用JSP技術,Web頁面開發人員可以使用HTML或者XML標識來設計和格式化最終頁面。使用JSP標識或者小腳本來產生頁面上的動態內容。產生內容的邏輯被封裝在標識和JavaBeans群組件中,並且捆綁在小腳本中,所有的腳本在服務器端執行。如果核心邏輯被封裝在標識和Beans中,那麼其它人,如Web管理人員和頁面設計者,能夠編輯和使用JSP頁面,而不影響內容的產生。在服務器端,JSP引擎解釋JSP標識,產生所請求的內容(例如,通過存取JavaBeans群組件,使用JDBC技術存取數據庫),並且將結果以HTML(或者XML)頁面的形式發送回瀏覽器。這有助於作者保護自己的代碼,而又保證任何基於HTML的Web瀏覽器的完全可用性。

2?強調可重用的群組件

絕大多數JSP頁面依賴於可重用且跨平台的組件(如:JavaBeans或者Enterprise JavaBeans)來執行應用程序所要求的更為複雜的處理。開發人員能夠共享和交換執行普通操作的組件,或者使得這些組件為更多的使用者或者用戶團體所使用。基於組件的方法加速了總體開發過程,並且使得各種群組織在他們現有的技能和優化結果的開發努力中得到平衡。

3?採用標識簡化頁面開發

Web頁面開發人員不會都是熟悉腳本語言的程序設計人員。JavaServer Page技術封裝了許多功能,這些功能是在易用的、與JSP相關的XML標識中進行動態內容產生所需要的。標準的JSP標識能夠存取和實例化 JavaBeans組件,設定或者檢索群組件屬性,下載Applet,以及執行用其它方法更難於編碼和耗時的功能。

通過開發定製化標識庫,JSP技術是可以擴展的。今後,第三方開發人員和其它人員可以為常用功能建立自己的標識庫。這使得Web頁面開發人員能夠使用熟悉的工具和如同標識一樣的執行特定功能的構件來工作。

JSP技術很容易整合到多種應用體系結構中,以利用現存的工具和技巧,並且擴展到能夠支持企業級的分布式應用。作為採用Java技術家族的一部分,以及Java 2EE的一個成員,JSP技術能夠支持高度複雜的基於Web的應用。

由於JSP頁面的內置腳本語言是基於Java程序設計語言的,而且所有的JSP頁面都被編譯成為Java Servlet,JSP頁面就具有Java技術的所有好處,包括健壯的存儲管理和安全性。

作為Java平台的一部分,JSP擁有Java程序設計語言“一次編寫,各處執行”的特點。隨着越來越多的供貨商將JSP支持加入到他們的產品中,您可以使用自己所選擇的服務器和工具,修改工具或服務器並不影響目前的應用。

應用範圍

ASP是Microsoft開發的動態網頁語言,也繼承了微軟產品的一貫傳統,只能執行於微軟的服務器產品,IIS(Internet Information Server) (windows NT)和PWS(Personal Web Server)(windows 98)上。Unix下也有ChiliSoft的組件來支持ASP,但是ASP本身的功能有限,必須通過ASP+COM的群組合來擴充,Unix下的COM實現起來非常困難。

PHP3可在Windows,Unix,Linux的Web服務器上正常執行,還支持IIS,Apache等一般的Web服務器,用戶更換平台時,無需變換PHP3代碼,可即拿即用。

JSP同PHP3類似,幾乎可以執行於所有平台。如Win NT,Linux,Unix。在NT下IIS通過一個外加服務器,例如JRUN或者ServletExec,就能支持JSP。知名的Web服務器Apache已經能夠支持JSP。由於Apache廣泛應用在NT、Unix和Linux上,因此JSP有更廣泛的執行平台。雖然現在NT操作系統佔了很大的市場份額,但是在服務器方面Unix的優勢仍然很大,而新崛起的Linux更是來勢不小。從一個平台移植到另外一個平台,JSP和JavaBean甚至不用重新編譯,因為Java字節碼都是標準的與平台無關的。

性能比較

有人做過試驗,對這三種語言分別做迴圈性能測試及存取Oracle數據庫測試。

在循環性能測試中,JSP只用了令人吃驚的四秒鐘就結束了20000*20000的迴圈。而ASP、PHP測試的是2000*2000循環(少一個數量級),卻分別用了63秒和84秒。(參考PHPLIB)。

數據庫測試中,三者分別對 Oracle 8 進行 1000 次 Insert,Update,Select和Delete: JSP 需要 13 秒,PHP 需要 69 秒,ASP則 需要 73 秒。

前景分析

目前在國內PHP與ASP應用最為廣泛。而JSP由於是一種較新的技術,國內採用的較少。但在國外,JSP已經是比較流行的一種技術,尤其是電子商務類的網站,多採用JSP。

採用PHP的網站如新浪網(sina)、中國人(Chinaren)等,但由於PHP本身存在的一些缺點,使得它不適合應用於大型電子商務站點,而更適合一些小型的商業站點。首先,PHP缺乏規模支持。其次,缺乏多層結構支持。對於大負荷站點,解決方法只有一個:分布計算。數據庫、應用邏輯層、表示邏輯層彼此分開,而且同層也可以根據流量分開,群組成二維數組。而PHP則缺乏這種支持。還有上面提到過的一點,PHP提供的數據庫接口支持不統一,這就使得它不適合運用在電子商務中。

ASP和JSP則沒有以上缺陷,ASP可以通過Microsoft Windowsd的COM/DCOM獲得ActiveX規模支持,通過DCOM和Transcation Server獲得結構支持;JSP可以通過SUN Java的Java Class和EJB獲得規模支持,通過EJB/CORBA以及眾多廠商的Application Server獲得結構支持。

三者中,JSP應該是未來發展的趨勢。世界上一些大的電子商務解決方案提供商都採用JSP/Servlet。比較出名的如IBM的E-business,它的核心是採用JSP/Servlet的Web Sphere。它們都是通過CGI來提供支持的。但去年10月後它推出了Enfinity,一個採用JSP/Servlet的電子商務Application Server,而且聲言不再開發傳統軟件。

總之,ASP,PHP,JSP三者都有相當數量的支持者,由此也可以看出三者各有所長。正在學習或使用動態頁面的朋友可根據三者的特點選擇一種適合自己的語言。

對Servlet技術與CGI、ASP、PHP、JSP等動態網頁技術進行具體的比較。

CGI與JSP最明顯的區別就是:

CGI是一個進程處理一個請求的。如果有10個人在線,那麼就得開10個進程。

php、asp、jsp都是一個進程處理多個請求的,無論多少人在線,都只有一個進程。

與傳統的CGI方式相比:

a. 後台實現邏輯是基於Java Component的,具有跨平台的特點

b. 將應用邏輯與頁面表現分離,使得應用邏輯能夠最大程度得到復用,從而提高開發效率

c. 運行比CGI方式高,尤其對於數據庫訪問時,提供了連接池緩衝機制,使運行所需資源最小

d. 安全,由於後台是完全基於Java技術的,安全性由Java的安全機制予以保障

e. 由於與ASP很近似,不需要太多的編程知識就可以動手編寫JSP

f. 內置支持XML,使用XML從而使頁面具有更強的表現力和減少編程工作量

下面講的比較詳細:分別將JSP、ASP、PHP兩兩比較。

與Asp和php的比較:

目前,最常用的三種動態網頁語言有ASP(Active Server Pages),JSP(Java Server Pges),PHP (Hypertext Preprocessor)。

ASP全名Active Server Pages,是一個WEB服務器端的開發環境,利用它可以產生和運行動態的、交互的、高性能的WEB服務應用程序。ASP採用腳本語言VB Script(Java script)作為自己的開發語言。

PHP是一種跨平台的服務器端的嵌入式腳本語言. 它大量地借用C,Java和Perl語言的語法, 並耦合PHP自己的特性,使WEB開發者能夠快速地寫出動態生成頁面.它支持目前絕多數數據庫。還有一點,PHP是完全免費的,不用花錢,你可以從PHP官方站點()自由下載。而且你可以不受限制地獲得源碼,甚至可以從中加進你自己需要的特色。

JSP 是Sun公司推出的新一代站點開發語言,他完全解決了目前ASP,PHP的一個通病--腳本級執行(據說PHP4 也已經在Zend 的支持下,實現編譯運行).Sun 公司藉助自己在Java 上的不凡造詣,將Java 從Java 應用程序 和 Java Applet 之外,又有新的碩果,就是Jsp--Java Server Page。Jsp 可以在Serverlet和JavaBean的支持下,完成功能強大的站點程序。

三者都提供在 HTML 代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。但JSP代碼被編譯成 Servlet 並由 Java 虛擬機解釋執行,這種編譯操作僅在對 JSP頁面的第一次請求時發生。在 ASP 、PHP、JSP 環境下, HTML 代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的 HTML 頁面只依賴於 Web 服務器,而 ASP 、PHP、JSP 頁面需要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被重新嵌入到 HTML 代碼中,然後一起發送給瀏覽器。 ASP 、PHP、 JSP三者都是面向 Web 服務器的技術,客戶端瀏覽器不需要任何附加的軟件支持。

JSP vs ASP

JSP跨平台,而且支持Apache, Netscape, IIS,IBM Http Server在內的所有主流Web Server (市場份額在85%以上),而ASP目前只支持NT+IIS(市場份額在20%左右);提供了更好的安全機制,這對於e-business這樣的應用來說是至關重要的; JSP可以跨操作系統、Web Server和應用服務器,而ASP只限於NT+IIS;

JSP是一個開放的標準,得到了Oracle, Netscape, IBM WebLogic, Inprise等的支持;JSP的組件編寫更為容易,而且JSP的性能由於ASP;

JSP vs PHP

JSP是一個業界標準,得到Sun,IBM,Oracle,BEA,Apache等的支持,PHP只是一個開發組織並不強的free ware ;PHP的性能不好,是解釋型的,JSP採用JIT編譯後,和c不相上下,而且支持多線程; JSP支持的平台眾多,從Win98,NT,Unix,Linux,FreeBSD到AS/400,OS/390,而PHP支持的平台有限; JSP可以利用JDBC和眾多主流關係數據庫連接,而PHP目前只支持MySql和Oracle等有限的幾種; JSP中的組件,JavaBean和EJB開發非常容易,而且還可以在JSP中使用Java所有的類和功能。而PHP只能用C寫一些功能有限的組件,而且編寫較為複雜;利用JSP可以支持EJB,以支持Transaction和CORBA標準,而且還可以支持LDAP,Message等服務,使得訪問ERP,CICS,MQ等企業應用非常容易。而PHP在這方面先天不足,所以對於電子商務這樣的Mission-critical的應用來說,PHP並不適合。

性能比較

有人做過試驗,對這三種語言分別做循環性能測試及存取Oracle數據庫測試。在循環性能測試中,JSP只用了令人吃驚的四秒鐘就結束了20000*20000的循環。而ASP、PHP測試的是2000*2000循環(少一個數量級),卻分別用了63秒和84秒。

數據庫測試中,三者分別對 Oracle 8 進行 1000 次 Insert,Update,Select,和Delete: Jsp 需要 13 秒,Php 需要 69 秒,ASP則 需要 73 秒。

前景分析

目前在國內PHP與ASP應用最為廣泛。而JSP由於是一種較新的技術,國內採用的較少。但在國外,JSP已經是比較流行的一種技術,尤其是電子商務類的網站,多採用JSP。

採用PHP的網站如新浪網(sina)、中國人(Chinaren)等,但由於PHP本身存在的一些缺點,使得它不適合應用於大型電子商務站點,而更適合一些小型的商業站點。

首先,PHP缺乏規模支持。其次,缺乏多層結構支持。對於大負荷站點,解決方法只有一個:分布計算。數據庫、應用邏輯層、表示邏輯層彼此分開,而且同層也可以根據流量分開,組成二維陣列。而PHP則缺乏這種支持。還有上面提到過的一點,PHP提供的數據庫接口支持不統一,這就使得它不適合運用在電子商務中。

ASP和JSP則沒有以上缺陷,ASP可以通過Microsoft Windowsd的COM/DCOM獲得ActiveX規模支持,通過DCOM和Transcation Server獲得結構支持;JSP可以通過SUN Java的Java Class和EJB獲得規模支持,通過EJB/CORBA以及眾多廠商的Application Server獲得結構支持。

三者中,JSP應該是未來發展的趨勢。世界上一些大的電子商務解決方案提供商都採用JSP/Servlet。比較出名的如IBM的E-business,它的核心是採用JSP/Servlet的WebSphere;西方另外一個非常著名的電子商務軟件提供商,Intershop。它原來的產品Intershop1 2, 3, 4佔據了主要的電子商務軟件份額。它們都是通過CGI來提供支持的。但去年10月後它推出了Enfinity,一個採用JSP/Servlet的電子商務Application Server,而且聲言不再開發傳統軟件。

JSP應用範圍:

JSP同PHP類似,幾乎可以運行於所有平台。如Win NT,Linux,Unix. NT下IIS通過一個插件,例如JRUN或者ServletExec,就能支持JSP。著名的Web服務器Apache已經能夠支持JSP。由於Apache廣泛應用在NT、Unix和Linux上,因此JSP有更廣泛的運行平台。雖然現在NT操作系統佔了很大的市場份額,但是在服務器方面Unix的優勢仍然很大,而新崛起的Linux更是來勢不小。從一個平台移植到另外一個平台,JSP和JavaBean甚至不用重新編譯,因為Java字節碼都是標準的與平台無關的。

其他相關技術

JDBC

JDBC(Java Database Connectivity)是Java應用程序訪問關係數據庫的接口。可以跨平台的語言,在其上面的應用(pure Java)可以在任何操作系統、應用服務器上運行,如:隨着用戶和訪問量的增加,可能會考慮改用商業Unix服務器和商業的應用服務器,基於Java的解決方案的應用可以不加任何改動平滑移植到新系統中,可以最大限度的保護現有投資;

藉助於EJB(Enterprise JavaBeans)的支持,可以實現基於組件和負載平衡的分布式計算環境;

各廠商提供了很多高效的開發工具,如:IBM WebSphere Studio,一些Java IDE等。考慮到性能上的影響,建議Oracle Server和Web Server採用分布式結構。

JavaBeans

JavaBeans是一種可重用的Java組件,它可以被Applet/Servlet/JSP等Java應用程序調用,也可以可視化地被Java開發工具使用。它包含屬性(Properties)、方法(Methods)、事件(Events)等特性。

Servlet

Servlet是一種在服務器端運行的Java Application,它可以作為一種插件(Plug-ins)嵌入到Web Server中去,提供諸如HTTP、FTP等以及用戶定製的協議服務。如果你已經用過Java servlet,那麼你就會知道servlet可以讓你建立動態生成的網頁,而網頁中包含有從服務器方的Java對象中所獲得的數據。但是你也得知道servlet 生成網頁的方法就是在Java類中嵌入HTML標籤和表述代碼。這就意味着改變表述代碼需要修改和重新編譯servlet源文件。因為設計HTML頁面的設計人員可能與編寫servlet代碼的開發人員不是同一個人,更新基於servlet的web應用程序就成了一件非常棘手的事情。

Enter JavaServer Page是Servlet API的一個擴展。事實上,JSP網頁在編譯成servlet之前也可以使用,所以它們也具有servlet的所有優勢,包括訪問Java API。由於JSP是嵌入到servlet中關於應用程序的一般表述代碼,所以他們能夠被看成一種“徹底”的servlet。

JSP網頁主要提供了一種建立servlet的高水平方法,它還帶來了其他的優點。即使你已經為web應用程序編寫了servlet,使用JSP仍然有很多優勢:

JSP網頁可以非常容易的與靜態模板結合,包括HTML 或XML 片段,以及生成動態內容的代碼。

JSP網頁可以在被請求的時候動態的編譯成servlet,所以網頁的設計人員可以非常容易的對錶述代碼進行更新。如果需要的話,JSP網頁還可以進行預編譯。

為了調用JavaBean組件,JSP標籤可以完全管理這些組件,避免網頁設計人員複雜化應用程序。

開發人員可以提供定製化的JSP標籤庫。

網頁設計人員能夠改變和編輯網頁的固定模板部分而不影響應用程序。同樣,開發人員也無須一個個編輯頁面而只須對組件進行合理的改變。

通常,JSP允許開發人員向許多網頁設計人員分發功能性應用程序。這些設計人員也不必知道Java編程語言或任何servlet代碼,所以他們能夠集中精力去編寫HTML代碼,而編程人員就可以集中精力去建立對象和應用程序。

原創文章,作者:PYGC,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/148462.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
PYGC的頭像PYGC
上一篇 2024-11-03 15:16
下一篇 2024-11-03 15:16

發表回復

登錄後才能評論