天才教育網(wǎng)合作機(jī)構(gòu) > 編程語(yǔ)言培訓(xùn)機(jī)構(gòu) > java培訓(xùn)機(jī)構(gòu) >

佛山中公財(cái)經(jīng)

歡迎您!
朋友圈

13140882082

全國(guó)統(tǒng)一學(xué)習(xí)專(zhuān)線(xiàn) 9:00-21:00

位置:編程語(yǔ)言培訓(xùn)資訊 > java培訓(xùn)資訊 > 關(guān)于Ajax技術(shù)

關(guān)于Ajax技術(shù)

日期:2009-06-19 23:24:35     瀏覽:409    來(lái)源:佛山中公財(cái)經(jīng)
Ajax號(hào)稱(chēng)是在Web2.0的浪潮中,最熱門(mén)的Web技術(shù)。
       Ajax(Asynchronous JavaScript and XML)并不是新的技術(shù),它是多種技術(shù)的結(jié)合,使用XHTML和CSS標(biāo)準(zhǔn)化呈現(xiàn);使用文檔對(duì)象模型(Document Object Model)作動(dòng)態(tài)顯示和交互;使用XML和XSLT做數(shù)據(jù)交互和操作;使用XMLHttpRequest 進(jìn)行異步數(shù)據(jù)接收;使用JavaScript綁定和處理所有數(shù)據(jù)。Ajax的工作原理相當(dāng)于在用戶(hù)和服務(wù)器之間加了—個(gè)中間層,使用戶(hù)操作與服務(wù)器響應(yīng)異步化。這樣把以前的一些服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)嫁到客戶(hù)端,利于客戶(hù)端閑置的處理能力來(lái)處理,減輕服務(wù)器和帶寬的負(fù)擔(dān),從而達(dá)到節(jié)約ISP的空間及帶寬租用成本的目的。而Ajax引擎,實(shí)際上是一個(gè)比較復(fù)雜的JavaScript應(yīng)用程序,用來(lái)處理用戶(hù)請(qǐng)求,讀寫(xiě)服務(wù)器和更改DOM內(nèi)容。
        Ajax是傳統(tǒng)WEB應(yīng)用程序的一個(gè)轉(zhuǎn)變。以前是服務(wù)器每次生成HTML頁(yè)面并返回給客戶(hù)端(瀏覽器)。在大多數(shù)網(wǎng)站中,很多頁(yè)面中至少90%都是一樣的,比如:結(jié)構(gòu)、格式、頁(yè)頭、頁(yè)尾、廣告等,所不同的只是一小部分的內(nèi)容,但每次服務(wù)器都會(huì)生成所有的頁(yè)面再返回給客戶(hù)端,這無(wú)形之中是一種浪費(fèi),不管是對(duì)于用戶(hù)的時(shí)間、帶寬、CPU耗用,還是對(duì)于ISP的高價(jià)租用的帶寬和空間來(lái)說(shuō)。如果按一頁(yè)來(lái)算,只能幾K或是幾十K可能并不起眼,但像SINA每天要生成幾百萬(wàn)個(gè)頁(yè)面的大ISP來(lái)說(shuō),可以說(shuō)是損失巨大的。而AJAX可以所為客戶(hù)端和服務(wù)器的中間層,來(lái)處理客戶(hù)端的請(qǐng)求,并根據(jù)需要向服務(wù)器端發(fā)送請(qǐng)求,用什么就取什么、用多少就取多少,就不會(huì)有數(shù)據(jù)的冗余和浪費(fèi),減少了數(shù)據(jù)下載總量,而且更新頁(yè)面時(shí)不用重載全部?jī)?nèi)容,只更新需要更新的那部分即可,相對(duì)于純后臺(tái)處理并重載的方式縮短了用戶(hù)等待時(shí)間,也把對(duì)資源的浪費(fèi)降到*,基于標(biāo)準(zhǔn)化的并被廣泛支持和技術(shù),并且不需要插件或下載小程序,所以Ajax對(duì)于用戶(hù)和ISP來(lái)說(shuō)是雙盈的。        Ajax使WEB中的界面與應(yīng)用分離(也可以說(shuō)是數(shù)據(jù)與呈現(xiàn)分離),而在以前兩者是沒(méi)有清晰的界限的,數(shù)據(jù)與呈現(xiàn)分離的分離,有利于分工合作、減少非技術(shù)人員對(duì)頁(yè)面的修改造成的WEB應(yīng)用程序錯(cuò)誤、提高效率、也更加適用于現(xiàn)在的發(fā)布系統(tǒng)。也可以把以前的一些服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)嫁到客戶(hù)端,利于客戶(hù)端閑置的處理能力來(lái)處理。       正面:            1、減輕服務(wù)器的負(fù)擔(dān)。因?yàn)锳jax的根本理念是“按需取數(shù)據(jù)”,所以*可能在減少了冗余請(qǐng)求和響影對(duì)服務(wù)器造成的負(fù)擔(dān);       2、無(wú)刷新更新頁(yè)面,減少用戶(hù)實(shí)際和心理等待時(shí)間;       3、也可以把以前的一些服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)嫁到客戶(hù)端,利于客戶(hù)端閑置的處理能力來(lái)處理,減輕服務(wù)器和帶寬的負(fù)擔(dān),節(jié)約空間和帶寬租用成本;       4、Ajax由于可以調(diào)用外部數(shù)據(jù);       5、基于標(biāo)準(zhǔn)化的并被廣泛支持和技術(shù),并且不需要插件或下載小程序;       6、Ajax使WEB中的界面與應(yīng)用分離(也可以說(shuō)是數(shù)據(jù)與呈現(xiàn)分離);8、對(duì)于用戶(hù)和ISP來(lái)說(shuō)是雙盈的。       負(fù)面:       1、一些手持設(shè)備(如手機(jī)、PDA等)現(xiàn)在還不能很好的支持Ajax;       2、用JavaScript作的Ajax引擎,JavaScript的兼容性和DeBug都是讓人頭痛的事;       3、Ajax的無(wú)刷新重載,由于頁(yè)面的變化沒(méi)有刷新重載那么明顯,所以容易給用戶(hù)帶來(lái)困擾――用戶(hù)不太清楚現(xiàn)在的數(shù)據(jù)是新的還是已經(jīng)更新過(guò)的;現(xiàn)有的解決有:在相關(guān)位置提示、數(shù)據(jù)更新的區(qū)域設(shè)計(jì)得比較明顯、數(shù)據(jù)更新后給用戶(hù)提示等;       4、對(duì)流媒體的支持沒(méi)有FLASH、Java Applet好;

本文由 佛山中公財(cái)經(jīng) 整理發(fā)布。更多培訓(xùn)課程,學(xué)習(xí)資訊,課程優(yōu)惠,課程開(kāi)班,學(xué)校地址等學(xué)校信息,可以留下你的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢(xún)電話(huà):13140882082

如果本頁(yè)不是您要找的課程,您也可以百度查找一下:
相關(guān)文章