BEA World 2007 SOA第一日手記
前一陣子工作忙,去北京參加CSDN的web2.0的機會錯過了,這次我正好處與服務框架第一階段總結期,同時測試部的資深總監受到BEA的邀請,可以帶上架構師一起去,所以有機會去上海參加BEA World 2007 SOA大會。說起來我們老大說這次會議的主題和我也算是“專業對口”,不是一直在說SCA讓SOA落地么,那么就去看看BEA怎么讓SOA走的踏踏實實的。
會議一共分成了兩天,這兩天上午都是主題演講,下午和其他的年度大會一樣,分成很多分會場,自己可以根據自己的興趣去選擇所要聽的主題。因為也沒有太多時間去看電子郵件中的會刊,所以對主題都還不清楚,早晨起床就粗粗瀏覽了一下上午的主題,一共分成了四塊:1.超越SOA:技術融合與動態應用。2.江蘇電力SOA實踐。3.基礎架構新探索。4.鑄就面向客戶的英國航空公司。正好是技術與實踐相結合,兩個技術案例,兩個商業案例。9點左右,大廳門一開,大家魚貫而入,選了貴賓席后面的第二排,就開始了我這上午半天的BEA SOA之旅。我想看我blog的多半是技術人員,我們就不講關于BEA公司的宣傳內容,直接進入主題,首先是總的談談這幾部分具體介紹的內容,然后談談我這個半吊子的SOA學習者的一些感觸。
超越SOA:技術融合與動態應用:
既然是BEA公司的SOA年度會議,那么自然會將BEA公司對于SOA的解決方案和產品推向我們每一個人。這次BEA推出的是他們的SAAS的平臺Genesis(創世紀),SAAS今年很熱,當然我們自己公司也是基于SAAS理念來構筑我們的電子商務平臺,BEA是將三個熱門的思想(WEB2.0 SAAS SOA)結合在了一起,放在這個創世紀平臺上,這三部分任何一項都可以作為互聯網應用開發的新理念來指導新一輪的互聯網運動浪潮,不過結合起來是否能夠達到想象的效果,這還需要實踐來檢驗。BEA為我們演示了一個關于模擬汽車銷售,服務,研發以及客戶多角色共同參與的項目實踐,在同一個業務系統中,角色的不同所看到的視圖不同,同時不同角色可以相互溝通,更甚者客戶可以對于設計者提出設計需求,同時銷售可以觀察客戶行為,主動地推薦產品。同時BPM的流程管理靈活性也在這個展示中成為了靈活適應需求的一個亮點。
江蘇電力SOA的實踐:
一個感覺,畫圖的水平不錯,滿眼的線路圖。
基礎架構新探索:
這部分內容其實是對于第一部分的介紹做了部分的系統架構介紹,也就是對于剛在的Genesis平臺作了一個總體的概述,以及一個遠景規劃。闡述了Genesis平臺的層次結構設計,主要分成四個層次:
User Interaction Business Process Service Network Hosting
最低下一層叫作Hosting,并不是我們常規考慮的硬件Hosting,而是指的我們各個業務系統原來的各種實現,也就是我們常說的各種信息孤島或者就是不同的遺留應用或者針對SAAS來說就是ISV的應用,這些Hosting常常技術實現不同,但是希望能夠被融合起來,發揮更大的價值。Service Network是SOA概念中的Service Domain,這一層往往來說是我們現在比較關注去實現的一層,因為這層是SOA是否能夠真正達到服務融合,服務復用的基礎,如何讓服務注冊,路由,交互,為上層提供靈活組合的基礎,是一個關鍵性的問題。Business Process層的作用主要是通過BPM來將下層的Service串起來,發揮服務靈活響應需求變化的要求。User Interaction這層次屬于比較高要求的層次,其實也就是結合了Web2.0的一個特性,那就是客戶參與和貢獻,使得產品更加具有活力。
英國航空公司的案例:
另一個感覺,好多數字展示了英航在互聯網信息化的成就。
以上是我上午聽了四個主題講座的如實感受和介紹,后面把我自己的一些新的體會感悟說一下。
前面說了,ASF(SCA-based Application Service Framework)第一期正好告一段落,其實在周二來上海之前,我正在畫第一期的結構圖以及后續需要規劃和完善的功能圖,當時其實有一些迷惘,作為我來說,不能和Tuscany一樣做純粹架構設計和實現,我需要關心業務部門的需求,根據需求來考慮框架功能實現優先級。根據首架的需求,我的第二期內容在年內暫時大部分內容是對于前期框架Web Service安全性能優化,多種分布式場景技術實現及測試,跨平臺客戶端兼容性的測試,最后一點就是ISV服務互通的架構支撐預研。總結了前期的工作,同時把一些新的功能點做了羅列(對于基礎框架生命周期的維護和監測,擴展點的增加),同時也對性能優化方案作了初步的制定,但是總感覺好像有些迷失方向的感覺,難道按照現有需求就只需要完成這些就達到了我們ASF的階段性交付了么,對于ISV服務互通采用什么策略呢?正好周二也要來上海,也沒有再多想,不過雖然剛才說了早晨的演講就這么些,但是對我腦子里那些問題倒是正好給了一些spark,下面就將這些spark一一道來。
SPARK One:DBA。不要誤會,不是我們公司的DBA,呵呵,是Dynamic Business Application的縮寫。這個詞匯是我第一次聽到,也是BEA公司給我的一個新的概念,叫做動態業務應用。它的概念其實就是指服務于服務之間組成了業務應用可以根據用戶需求靈活變化,成為動態而非過去,由需求,建模,概要設計,詳細設計,編碼實現而產生出來的傳統商業應用。應為傳統應用最大的弱點就是固化和僵硬,面對現在互聯網應用的多變性和客戶化,傳統的設計理念和模式已經很難適應這種應用場景,因此需要一種敏捷的開發模式,面向服務+BPM+ESB,可能這些技術早就都已經存在并且也都曾經被廣為推崇,但是結合起來所能達到的效果確不是1+1+1=3的效果。同時結合Web2.0的特質,倡導參與貢獻多于遵循使用,這種靈活的框架模式無疑成為應用平臺很好的一個理念。此時我回顧了我這段時間SCA的一些工作,當前的服務框架已經能夠做到讓開發者不用過多關心業務邏輯以外的內容,業務模塊化和面向服務交互的理念已經深入開發過程中,但是考慮一下提到的以后ISV應用的互通解決策略,就可以發現,其實由于當前我們所開發的系統首先都是新系統,采用同樣的技術架構,雖然ISV和我們的交互已經是異構環境,但是我們系統之間處于業務流程相對來說比較固定,服務組裝交互實現可以定義好的情況,也就是說是一種服務靜態組裝的過程。但是對于未來我們的ISV應用來說,首先都是異構的實現,然后就是在ISV之間串聯未必可以通過靜態配置和設計事先確定,同時針對用戶行為分析是否可以及時動態調整服務流程,都是一個動態的過程,這也給我一個啟示,那就是第二期的互通,需要量體裁衣(最后會提到為什么要用這個詞),來構造適合的Service Network和 Business Work Flow。當然這個過程還是和我先前說的一樣,按照需求的優先級逐步實現,按需而進。
Spark Two:User Interaction。其實這個概念應該是我在我同事北京帶回來程序員web2.0增刊中所看到的一個理念。我想現實生活中其實這類工作老早開展起來了,就好比你去商場買東西給你一個反饋表,讓你填寫一下,那么那個產品會根據客戶的反饋作一定的改進。只是今天BEA給我展示的時候,通過不同角色所看到的用戶操作界面的個性化和專業化,讓User Interaction這個概念在技術上有了實實在在的表現,同時在基于剛才提到的DBA基礎上,客戶的反饋在最最極端的情況下都可以直接主導流程(即客戶可以修改流程),不過BEA也說了這還是需要安全策略的配置允許的。那么作為我們未來互聯網應用的場景下,這種面向客戶的交互其實對于互聯網應用來說無疑是很有吸引力的。
Spark Three:社會計算。這個詞很新鮮,也是今天第一次聽到,下午也在一個分會場站了50分鐘(會場太小,走錯以后再回來就只能站著了)。社會計算和Web 2.0中的Social networking有一定的概念上的類似,其實就是溝通,也就是團體的溝通,個體的溝通,通過什么樣的有效手段來溝通,rss,mash up,blog,都是一種手段,在上面的例子里面,買車子的客戶可以通過blog反饋給Designer,Sales可以push給客戶一個小短片來展示給客戶看新的產品,這些都是一些很有效的溝通手段,其實溝通就是為了雙贏,互聯網貿易除了安全這個大問題以外,剩下的最大問題就是如何讓買賣雙方因為溝通問題導致交易受挫。同時社區化是應用的互通價值最大化的有效生態環境保證。
Spark Four:客戶行為分析。其實也是一種手段,不過指的是自學習的一種行為分析,類似于Google對于客戶行為分析。如果留意一下,我們在日常搜索中如果搜索的內容經常會出現,那么Google就會智能化的提高客戶體驗。
其實,對我最有啟發的還是第一點,同時對于我來說有很多的問題需要去深入了解和分析,同時結合當前框架以及業務場景做量體裁衣,這么說的目的其實在于聽過了BEA的創世紀平臺規劃后,整個框架設計和理念都是讓人覺得很有創新和價值的,但是BEA規劃到了2009年,他的功能點和橫向縱向切面都作了規劃,但是這么一個龐然大物對于ASF來說并不合適,ASF也并不需要朝著這個方向發展。阿里的人都喜歡用武俠小說來打比方,我就打個比方,BEA為韋小寶提供了一套盔甲的解決方案,不論從外觀和安全性上來說都是完美無缺的,不過韋小寶其實需要的是一件金絲甲,輕輕薄薄的,跑路快,又可以刀槍不入。同時有什么問題隨時可以修補增改??蚣茉O計的敏捷性和框架問題相應的敏捷性是同樣重要的,龐大的項目版本周期長,為了不同客戶訂制困難,那么就是另一個固化和僵硬的體現。當然設計框架幾個關鍵點需要把握:擴展性,規范通用性(不要用私有的協議),學習基礎上的創新。
上面是上午的內容,其實為什么花了那么多字寫了上午的內容,其實是下午的內容沒什么好說了^_^
下午一共參加了四個分會場,一個就是剛才提到的站了50分鐘的社會計算和Web2.0的講座,概念性的介紹,不過擴展了思路。Liquid Infrastructure for Enterprise Java Application,這個課程名字不錯吧,流動性的框架針對企業及的java應用,結果去了一聽,是談到使用vmware的產品,如何在服務器池中部署企業應用,提高效率和節約成本,晚上吃飯的時候和我們的測試部老大談起了這個,他剛進公司就做了這樣的實施,得卻對于效能有一定的幫助,不過對我原先的理解就偏差大了,早知道仔細看看簡介了。最后兩節課是SOA一個培訓的聯系課程,今天下午四節,明天下午4節,我今天下午就參加了兩節,最后兩節,一節是談到了關于SOA的治理,一位香港的朋友介紹的,聽了一節課,就知道他最后一句說出了他SOA治理的名言:SOA治理最難的就是搞定內部關系,技術從來就不是問題。赫赫,這句至理名言好象在很多行業中盛行。第二節課是對SOA技術的一個匯總,講師開始整一個介紹了Web Service的框架,最后才提了一句孤立的Web Service不是SOA,真是畫龍點睛啊,要是沒有這句話,我真的要為他捏把汗了,不過他發的BEA對于SOA的最后幾個領域模型介紹還是應該蠻有幫助的,不過因為時間緊迫,他沒有講這些重點,而是把時間讓給了最后BEA認證介紹的講師。我么,提起包包,吃晚飯去了。
這就是我第一天BEA的手記,明天是否會下午全部聽完,這就要看我們同行老大的安排了,不過還是期待明天上午的主題演講能夠有一些Spark,讓我也能有所收獲。這次也看見一些同行的朋友提問,有些是技術型的,但是聽那兩個SOA講座的有不少還是理論先行的,這感覺SOA又開始在這兒“漂浮”起來。
總的來說,其實參加這樣的大會我也早就有心理準備,未必能夠真的了解很多核心的解決方案,只是可以接觸一些新的思想,新的碰撞可能會給自己的工作帶來一些靈感和啟發,后續周末或者下周就可以把第一階段總結和第二階段的思考再從新規劃一下。轉眼就11點半了,洗澡睡覺,期待明天的碰撞,不論是否有火花。