異步是描述的一個客戶端和一個服務器端的交互的側面,在這種交互中客戶端不用等待服務器端——或者經常稱之為的被阻塞——來等待接受從服務器端的響應。 消息傳遞系統,如MQ-Series, Tibco Rendezvous和類似于JMS的可編程API,都是比較早就采用異步機制的概念了的,但是現在Ajax正在以相同的方式來解決Web應用程序的問題。
Ajax 的異步概念來自于由瀏覽器進行的JavaScript 函數調用,并把結果返回給Web服務提供者或者服務端的應用程序。當你和一個Ajax應用程序交互的時候,那種可以更新展示在屏幕上的信息塊的而不需要刷新或者重載它的所有內容的方式就是異步的,因為你能夠在服務器端構建很多不同的調用而不需要在等待服務器響應的時候——客戶阻塞——時刻的盯著一個空白的屏幕。
盡管正式那些Web2.0的支持者包括圖像設計者和軟件市場人員最經常的使用Ajax,很多開發出來的軟件使得Ajax應用程序可以作為可復用服務的集合。
奇怪的是為一個Ajax應用程序提供的數據不需要由一個Web瀏覽器客戶端的約束或者JavaScript語言來幫定,實際上一個最優化的Ajax設計將會確定的在服務端以一種廣為所知的Web服務設計方式來幫定:REST(可以在REST: Simplicity in Web Services design 專欄看到關于REST的更多的消息。)
REST服務,是被創建來用于提供一個Internet URL 的簡單的訪問點,有效的掩蓋服務端的平臺,比如你也許期望的Web service 并且由最早的Web services選擇器提供最簡單的設計模式,如eBay、Yahoo!和 Amazon。他們本質上是提供粒度的數據塊而不是提供完全的頁面,所提供的數據塊可以按照客戶端提供的需求來消費和產生。
因為 Ajax應用程序的生命周期是由從服務端調用的對屏幕特定部分進行更新的過程組成的,REST服務提供了一個創建基于Ajax的應用程序的超集。所以如果現在你有一個已經存在的REST服務群,這將會是為你的Ajax應用程序開個好頭。類似的,你將會被很好的建議,以采取必要的步驟來整合所有的你是用來讓你的Ajax應用程序變成一個更加龐大的REST服務集合那些資產,這樣做的目的是讓這些資產能夠在其他的面向服務/非Ajax的應用程序中使用。
在另外一方面來說,綁定到一個瀏覽器來使用你的服務,遮掩個會限制你的使用環境,所以這也會暗示著創建你的Web services客戶端。然而很多Web services客戶端具有從其他不同的來源集中和控制數據的能力,這些上可以實現的,因為他們被由類似于Java EE, .NET或者 PHP的系統架構構建而成的。
考慮在兩個不同的Web服務提供者之間集成數據。這種情況和在一個非瀏覽器環境下也許一樣簡單,可以證明會成為Ajax應用程序中的一個頭疼的問題,也就是它是跨站點的腳本的原因。為了能夠努力阻止惡意代碼的執行,一個瀏覽器通常是受限的,它只能在它顯示的站點上擁有的執行邏輯代碼。這防止了信任的請求在那些未被信任的站點執行,但是這個相同的處理會避免接近兩個或者更多的不同Web service提供者,除非是在一個更低的安全配置要求的瀏覽器的情況下,因為這種方式在整個IT安全實踐中都被認為是一種不好的方式。
最后的,還有一個需要考慮的東西是用來構建Ajax應用程序的JavaScript語言。每一個用來開發Web應用程序的編程語言都依賴于一個特定的框架,以減少開發任務的難度和適應Web的本質。大部分的這些框架都是用于服務器端的平臺,而Ajax作為服務端的一個簡單的單獨REST服務集合,它并不是其他的Web架構平臺提供的并不適用于Ajax應用程序的功能。它是這些設計所關注的一些簡單的東西——如標準化請求或者控制類——轉移到瀏覽器。在最后,關于很多JavaScript 架構方面的研究都是很值得去做的,以便開出來讓創建Ajax應用程序更加容易。
Ajax本質上是 Web開發的下一個潮流,但并不是意味著它將會被作為一個Web的新的注視點而已。正如你可能已經意識到的一樣,在關于Ajax設計你的整個面向服務的動機結合起來的考慮意味著你可以在你的時間和資源上取得一個最大的回報。所以下一次你開發主動解決Ajax適用的有效性的時候,可以試著用SOA的相同的可復用性方法。
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 2006.04.10??來自:IT專家網 ??
Grartner的搜索引擎分析師Allen Weiner說:不能僅僅看到Google今天發布了什么,更重要的是Google未來將要發布的東西。Google希望成為強大的、可以控制桌面的前端系統,比如Google希望搜索引擎能成為用戶所想要做的一切——聽音樂、處理文檔等的一部分。在Google套現之前,Google首先要做的就是在計算機上普及這個軟件。
Allen Weiner猜測Google隨后會推出更多的產品,包括開源的字處理軟件或者電子表格處理軟件,而這些軟件的某些功能,比如拼寫檢查將會通過Google的搜索引擎來完成。
某些人士認為:一旦這些軟件植入個人電腦,那么企業級的應用也為期不遠。IDC集團的分析師Sue Feldman指出:在家庭應用和辦公應用之間不再存在清晰的界限,家庭用戶的傾向經常會被帶到辦公場所當中。Sue Feldman還指出:Google擁有大量的用戶行為數據,而這些數據每天仍在增加,這使Google可以在搜索之外做更多的事情。
Endpoint Technologies Associates Inc.的總裁Roger Kay認為象Google這種以客戶為導向的公司,完全可以在企業應用方面大有作為。
Google已經投產若干企業級的搜索產品——Google Search Appliance、Google Mini、Google Desktop Search for Enterprise以及面向商業用戶的Google Earth Pro。
Google Pack軟件包括了Mozilla Foundation公司的Firefox網頁瀏覽器、賽門鐵克公司的諾頓防病毒軟件、Adobe公司的閱讀軟件、RealNetworks Inc.公司的RealPlayer多媒體播放軟件、Cerulean Studios公司的Trillian 即時消息軟件、GalleryPlayer公司的高清晰圖像軟件以及Lavasoft AB公司的Ad-Aware 反間諜軟件。
Google Pack軟件包還會包括Google自有的桌面搜索軟件、地球衛星成像和繪圖軟件、Picasa照片管理軟件、Google Talk即時消息程序、用于網頁瀏覽器的Google Toolbar工具欄、Google視頻播放器以及屏幕保護程序。
Google Updater程序將會安裝和維護這些軟件、并在更新發布的時候通知用戶。賽門鐵克透露:Google Pack里的諾頓防病毒軟件可以免費使用六個月,之后可以交費續用。
Google Pack軟件包只有一個安裝程序,目前可以從Google.com下載。PC廠商和分析師預計在不久的將來會在臺式機或筆記本上預裝全部或部分的Google Pack軟件包。
Intel近日宣布:Google將為其Viiv娛樂平臺提供視頻搜索軟件。惠普的發言人Ann Finnie表示,惠普正在測試該軟件包,但仍未有計劃會將其應用到惠普生產的臺式機和筆記本中。她說:“盡管用戶對Google工具欄的反響很好,但其中若干組件是不可能贏得企業用戶市場的,比如Picasa照片管理軟件以及諾頓殺毒軟件。”
Google Pack軟件包中的每一個軟件都能找到對應的微軟產品,因此許多觀察家都指出,Google發布軟件包的動機是為了與微軟在桌面領域進行競爭。
研究微軟的分析師Joe Wilcox卻認為該軟件包主要是為了推動搜索業務,而非與微軟競爭,他說:“Google有遠比微軟重要的目標,其中之一就是增加其業務的粘性。使用搜索引擎的用戶僅僅是在瀏覽器里鍵入一個地址,不像操作系統那樣對購買者有粘性。因此,Google就要通過發布一系列對用戶具有粘性的產品和服務——比如Picasa、G-Mail和工具欄——來增加Google品牌的忠誠度。”
J.W. Locke and Associates的總裁Jim Locke稱,許多普通消費者和中小企業用戶或許很容易受免費軟件包的誘惑,但他們中的絕大多數或許會問:“我已經有了類似的軟件,這個軟件包有什么特別之處值得我安裝呢?”等到Google Pack軟件包流行起來變成人們日常所需的軟件時,微軟早就把桌面“上鎖”了。
2006.01.10 來自:太平洋電腦網
|
這篇技術預言是由xMatrix翻譯并發布在他的blog上,原文作者是Ted Neward,Ted Neward 是Effective Enterprise Java的作者。
1、Ajax的光環不再,人們開始認識到其實沒有什么新玩意兒,只不過是DHTML而已。像Dion指出,Ajax會成為你在網面開發中的一個工具箱而不是認為我正在“使用Ajax”,就像我們對使用HTML與DOM的態度。
2、EJB3的發布再次引起人們的注意,但希望這次會帶來更多些實際的東西,少些中看中不用的(的確EJB在JAVA世界中占有一席之地,但注意一下,他比大部分EJB廠商和書作者所期望的要少的多)。
3、Vista將延遲到2007,盡管微軟已經很努力了。但同時,WinFX(也就更有效的.NET3.0)會如期發布,大家會發現工作流(WWF)將比WPF/WCF/WWF三人組更有趣。注意這里我說的不是“更強大”或“更重要”,而是“有趣”。
4、腳本語言會在2006年達到他的高點。向Ruby的轉換會遇到一個極點,可能在2006年下半年我們會聽到一個使用Ruby的主要項目失敗,很可能是一個較大的咨詢公司嘗試復制Ruby傳道者的成功經驗卻還沒有深刻了解。換名話說,相同的故事,不同的技術,相同的結果。到2007年時Ruby可能會走下坡。
5、對聯結動態與靜態語言的興趣正在增長,最初如E4X,ECMAScipt集成XML的變體。
6、Java開發人員開始對rich Java apps 的興趣再增加。(坦率地說,這是一個賭注,但SUN的Swing研究人員已經做了這方面的工作,可能在2006年中期就會達到其黃金時期)
7、微軟內部的一些開始強烈要求CLR團隊增加對保存點(continuation)的支持,記要顯示將會在4.0的發布版本中支持。
8、《有效Java編程》(Effective Java第二版)將會出版。
9、《有效.NET編程》(Effective .NET)將會出版。
10、《XML服務實戰》(Pragmatic XML Services)將會出版。
11、JDK6會發布,一大群Java社區中自稱行家的人聲稱其值得期待。
12、Java開發人員開始討論在JDK7中需要新增和改變的特性。有許多新的想法被提出,希望大多數都可以實現。幸運的是,Joshua Bloch and Neal Gafter會繼續參與改進的過程,也會提出更有力的想法并將他們實現出來。
13、我更大的期望,而不僅僅是對2006的預測,是Sun能夠認識到Java平臺不僅是一種語言,而且是一個平臺,并且給予更多的信任和期望來建立一個支持多語言的JVM平臺系統。
14、我最大的夢想是JBoss脫離商業平臺,并將其源代碼回歸給那些致力于維護開源項目而不是想著賺錢的開發人員,就像開發Geronimo項目的那些小伙子們做的。換句話說,開源社區要停止內戰來齊心協力地朝同一方向努力。
原文地址:http://blogs.tedneward.com/CommentView,guid,771ab347-c3ba-4a0a-b5ed-cd4dd7b73d49.aspx