1傳統WEB開發模式的工作流程:
傳統WEB開發模式是一種同步概念.使用者必須等待每個請求,當一個請求完成後才能獲得結果,在使用完這些結果後才會發出新的請求.如:當使用者請求了一篇文章,他肯定會在閱讀完這篇文章後才會去擷取其他資料,否則當前文章頁面將被重新整理,無法閱讀.它完全是一種請求--->重新整理--->響應的模型,使用者只有等請求完成後才能進行使用者操作,操作完成後才能提交下一個請求,使用者行為和伺服器行為是一種同步的關係.
2ajax開發模式的工作流程:
ajax開發模式是一種非同步概念.這意味著用戶端和伺服器端不必再相互等待,而是進行一種並發的操作.使用者再發送請求以後可以繼續當前工作,包括瀏覽或提交資訊.在伺服器響應完成之後,ajax引擎會將更新的資料顯示給使用者看,而使用者則根據響應內容來決定自己下一步的行為.
在使用者行為和伺服器端多了一層ajax引擎,它負責處理使用者的行為,並轉化為伺服器請求.同時它接收伺服器端的資訊,經過處理後顯示給使用者.
3使用ajax的好處就不多說了,下面說下它的缺點
A:ajax通訊常常是一個資料片段,例如,xml.html片段,或者純文字,這些資訊不是完整的html文檔,而且通過後台來非同步擷取,不能被搜尋引擎發現並緩衝.
B:ajax將大量的運算從伺服器端轉移到了用戶端,意味著瀏覽器將承受更大的負擔,不再是簡單的文檔顯示。ajax中的核心語言是javascript,作為一門解釋型的指令碼語言,其運行效率不是很高.而且依賴不同的瀏覽器實現
伺服器(傳統模式中,它是提供HTML、映像、CSS或JavaScript)將配置為向Ajax引擎返回其可用的資料,這些資料可以是純文字、XML或者需要的任何格式,唯一的要求就是Ajax引擎能夠理解和翻譯這種資料。
當Ajax引擎收到伺服器響應時,將會觸發一些操作,通常是完成資料解析,以及基於其所提供的資料對使用者介面做一些修改。由於這個過程中傳送的資訊比傳統的Web應用程式模型少得多,因此使用者介面的更新速度將更快,使用者也就能夠更快地進行他們的工作。圖1-1是在Garrett文章中原圖的基礎上進行修改的,它說明了傳統Web應用程式模型和Ajax模型之間的區別。