新聞中心
本文討論的重點(diǎn)是java在利用spring等架構(gòu)的web開發(fā),對比php等在開發(fā)運(yùn)維和性能方面有那些優(yōu)勢。尤其在電子商務(wù)等稍稍復(fù)雜一些的網(wǎng)站,java在業(yè)務(wù)實(shí)現(xiàn)上有那些優(yōu)勢。

創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、相城網(wǎng)絡(luò)推廣、小程序設(shè)計(jì)、相城網(wǎng)絡(luò)營銷、相城企業(yè)策劃、相城品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供相城建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
人人都說java適合大項(xiàng)目,但沒聽說誰道出真正原因。我先說說自己的感覺。
java優(yōu)勢,是適合團(tuán)隊(duì)開發(fā),軟件工程可以相對做到規(guī)范,這是一個(gè)很難比擬的優(yōu)勢。
java劣勢,是j2ee的架構(gòu)很***,***版軟件可以做滿意,但是很不適合互聯(lián)網(wǎng)模式的持續(xù)不斷修改?;ヂ?lián)網(wǎng)軟件工程管理上的不足,持續(xù)的修修補(bǔ)補(bǔ)導(dǎo)致架構(gòu)的破壞。系統(tǒng)更新需要重啟web服務(wù),很難接受。
以下是我與網(wǎng)友們的討論
tong0245:做web開發(fā)的,不管php perl pyton ruby 都是腳本語言,而java不是。
野狼:這是java的優(yōu)勢? 是不是腳本語言根本無所謂. 雖然可以編譯,我認(rèn)為甚至也可理解java一樣是腳本語言,不算獨(dú)立運(yùn)行 。我一貫使用c寫web程序, java有些好的理念, 但常常人為把事情搞復(fù)雜。
艾斯尼勒:我覺得可能是這樣,由于有jvm的存在,大型的系統(tǒng)開發(fā)起來還是象單機(jī)的程序那么簡單而php...要考慮的貌似更多而且你用java就高級,設(shè)計(jì)也好。據(jù)說是能很好的提升可擴(kuò)展性和可維護(hù)性
野狼 : 以前在公司,負(fù)責(zé)一套java做的系統(tǒng),業(yè)務(wù)的復(fù)雜程度國內(nèi)少有,最初請過sun工程師做的架構(gòu),兩年多來敏捷開發(fā),項(xiàng)目管理做的不算差,但業(yè)務(wù)的發(fā)展導(dǎo)致了100多次上線,架構(gòu)破壞嚴(yán)重,面臨重構(gòu)。反思一下,在自己的項(xiàng)目中看不到j(luò)ava的優(yōu)勢在那里。感覺作為成品,賣給客戶的物流erp系統(tǒng),能發(fā)揮java的特點(diǎn)。 有做運(yùn)營性的互聯(lián)網(wǎng)項(xiàng)目的兄弟,介紹一下開發(fā)管理經(jīng)驗(yàn)。
javavsnet :1.靜態(tài)語言 2. 有大量成熟框架 再補(bǔ)充一點(diǎn) 3. 語言簡單,健壯,不容易出錯(cuò),適合民工使用.
野狼:所謂靜態(tài)語言,是對比腳本語言?那沒有任何優(yōu)勢。
php,asp成熟框架不見得少,hibernate搞得程序員sql都不會(huì)寫,而且復(fù)雜查詢性能不好。論語言簡單,好像asp最簡單,php也比java容易些吧。我問的也是,java在運(yùn)營性的互聯(lián)網(wǎng)項(xiàng)目的優(yōu)勢, erp等不算。
javavsnet : 如果你只用jsp,那也不用重啟,修改jsp后直接拷貝到相應(yīng)目錄就可以。如果你用了jsp之外的技術(shù),那是需要重新啟動(dòng)。java是靜態(tài)語言,有豐富成熟的框架可用。比如hibernate這樣的ormapping。一般來說,Java做的東西很復(fù)雜,很強(qiáng)大。
野狼:單純的jsp當(dāng)然了不需要。 是否重啟不是重點(diǎn)。
javavsnet :Java是靜態(tài)語言,有靜態(tài)類型檢查,健壯,如你所說,java優(yōu)勢是適合團(tuán)隊(duì)開發(fā),軟件工程可以相對做到規(guī)范。對于互聯(lián)網(wǎng)項(xiàng)目,可以分為兩類。一類是 web 2.0,需求變化快,網(wǎng)站的進(jìn)化速度很快。比如開心網(wǎng),出點(diǎn)什么錯(cuò)誤用戶也能忍受,用戶喜歡的是炫目的功能。這方面Java沒有優(yōu)勢,是劣勢。另一類是Java的強(qiáng)項(xiàng),所以目前是Java的天下。就是對可靠性要求極高的互聯(lián)網(wǎng)項(xiàng)目。比如ebay,絕對不允許交易出現(xiàn)失誤,系統(tǒng)crash誰受得了?還有就是Java的性能比腳本語言強(qiáng),和c性能比Java強(qiáng)是一個(gè)道理。對大容量系統(tǒng)的支持比php,perl們?nèi)菀住sp最簡單,php也容易,但是他們誰能跟Java比健壯性?用php+c編的系統(tǒng),性能上來了,但是可靠性呢?在可靠性方面,你對php+c有信心還是對Java有信心?
綜合來看,Java做互聯(lián)網(wǎng)項(xiàng)目開發(fā)速度比腳本語言慢,但是可靠性和性能上要強(qiáng),是各有所長吧。
野狼:之前見過淘寶的***架構(gòu)師,淘寶主營業(yè)務(wù)的確曾經(jīng)考慮性能等愿意, 由php轉(zhuǎn)的 java。不過我不認(rèn)為java在性能上有優(yōu)勢、真正意義上的web2.0極少, 不如就說普通類型網(wǎng)站java沒有優(yōu)勢。 不過事實(shí)上現(xiàn)在倒是java網(wǎng)站越來越多,甚至招聘php工程師都不好找。您說的可靠性,是安全還是穩(wěn)定性? 安全基本上和語言無關(guān), 穩(wěn)定性似乎和語言也沒關(guān)系啊。
javavsnet :說Java性能有優(yōu)勢,是編輯型語言對解釋型語言的優(yōu)勢,這是根本性的優(yōu)勢。不過在web應(yīng)用中,這部分性能占的比重不大。我覺得對于web應(yīng)用的性能來說,關(guān)鍵的是語言對并發(fā)的處理能力。Java有成熟的多線程模型,可以充分利用多核CPU。說Java應(yīng)用可靠,是因?yàn)镴ava沒有指針,壞代碼會(huì)造成內(nèi)存泄露,但是不會(huì)造成系統(tǒng)crash。一般來說,內(nèi)存泄露需要一定時(shí)間的積累才會(huì)消耗光系統(tǒng)內(nèi)存,這個(gè)過程給了管理員機(jī)會(huì)來發(fā)現(xiàn)問題,解決問題。還有 Java是靜態(tài)類型,這樣編譯器可以在編譯時(shí)發(fā)現(xiàn)一些類型不匹配問題,在動(dòng)態(tài)類型語言中只能靠程序員自己了。
野狼: 如您所說, web應(yīng)用編譯型語言不體現(xiàn)優(yōu)勢。系統(tǒng)的并發(fā)的處理能力和語言不是直接相關(guān)。 我理解Java有成熟的多線程模型,是用于處理復(fù)雜程序邏輯上。而比如簡單的打開模板再輸出,不可能超過apache+php的并發(fā)能力。所有解釋語言都沒指針,都不會(huì)因?yàn)槌绦騿T疏忽造成內(nèi)存泄露系統(tǒng)crash。 在這點(diǎn)上解釋語言應(yīng)用更可靠,甚至不會(huì)造成內(nèi)存泄露。
javavsnet :并發(fā)有兩部分,一部分是web server對并發(fā)request請求的處理,這里Java和其他語言一樣,都依賴Apache的處理能力。另一部分是application server對應(yīng)用邏輯的并發(fā)處理,這里語言本身對并發(fā)的支持就很重要了。
野狼:java的語言能力肯定比php等強(qiáng)。不過我理解java的語言能力是配合框架,體現(xiàn)在特殊應(yīng)用上, 比如單例模式,而不是對并發(fā)能力的提升。處理相同的業(yè)務(wù)算法,并發(fā)只和語言的處理效率,以及webserver相關(guān)。
思一克: 好像有的WEB應(yīng)用不用JAVA做不出來,就是AJAX那類的,著名的是GOOGLE MAP等。AJAX技術(shù), 將WEB頁面做的可以和本地GUI一樣漂亮。和PHP, CGI類的區(qū)別是本質(zhì)性的。GOOGLE MAP的成功就是用這個(gè)。
野狼 :AJAX就是異步JavaScript和XML,和java毫無關(guān)系。 AJAX不是任何新的技術(shù),也不是新的語言,協(xié)議。算是整理了一套javascrpit 在特殊情況的應(yīng)用。 其實(shí)是微軟先使用的AJAX在商業(yè)產(chǎn)品中。
【觀點(diǎn)】JAVA與PHP ,二者的開發(fā)成本都不低。不過由于Java開源,所以代碼重用率很高,在網(wǎng)上就可以找到很多開源的技術(shù)、框架,在有些時(shí)候可以降低很多成本。java 的擴(kuò)展庫特別多,開發(fā)起來相對比較容易。不過Java對服務(wù)器性能的要求高,因?yàn)镴ava虛擬機(jī)和連接池都是比較耗資源的。單看純運(yùn)用時(shí),理論上JAVA的性能及安全可靠性也稍遜PHP??傊?,JAVA與PHP都有各自的優(yōu)勢,大家在做互聯(lián)網(wǎng)開發(fā)時(shí),還是具體情況具體分析吧。
網(wǎng)站名稱:用Java做互聯(lián)網(wǎng)開發(fā)優(yōu)勢何在?
標(biāo)題網(wǎng)址:http://m.fisionsoft.com.cn/article/dpoocdd.html


咨詢
建站咨詢
