緣起
幾周前,受到了普元的邀請(qǐng),去三亞參加一個(gè)SOA的技術(shù)交流會(huì),原本以為是因?yàn)樵谒麄兊恼搲瑫r(shí)更新了一些文章所以被邀請(qǐng)一起去參加產(chǎn)品部活動(dòng),開始不是很想去,畢竟廠商出錢多半就是讓你去聽聽他們的產(chǎn)品,一個(gè)周末飛來(lái)飛去的也累,但淘寶的BlueDavy大叔要去,順便也叫我一起去熱鬧熱鬧,那么就決定去湊這個(gè)熱鬧。周五下班以后背了個(gè)包就直奔機(jī)場(chǎng)了,結(jié)果到了機(jī)場(chǎng)才發(fā)現(xiàn)辦護(hù)照的時(shí)候身份證放在家里了,幸好機(jī)場(chǎng)還有個(gè)臨時(shí)身份證明辦理的便民業(yè)務(wù),總算順利的上了飛機(jī)。
人物
第一天到場(chǎng),第一個(gè)環(huán)節(jié)就是自我介紹,江湖中人就悉數(shù)登場(chǎng)了。Robbin,白衣,俞黎敏,小剛,楊戈,InfoQ中文站的主編霍泰穩(wěn)和其他幾個(gè)編輯,灰狐的主創(chuàng):銀狐999,程勇,普元的老大Chris以及普元的很多技術(shù)架構(gòu)師牛人。陳勇的一句話就把我們這批人概括了一下,其實(shí)大家都是江湖中人,平時(shí)混各個(gè)堂口的,今天在普元召集的這么一次活動(dòng),有機(jī)會(huì)能夠匯聚一起,談天說(shuō)地。
活動(dòng)
第一天上午有兩個(gè)Topic關(guān)于SOA的市場(chǎng)價(jià)值,下午也有兩個(gè)Topic關(guān)于SOA的企業(yè)架構(gòu),主講的都是我們這些外部請(qǐng)來(lái)的人。上午下午有很多時(shí)間是自由討論,每個(gè)人都有機(jī)會(huì)發(fā)表自己的意見,應(yīng)該是算圓桌會(huì)議,所以你要發(fā)言隨時(shí)隨地都可以直接說(shuō),不需要顧忌什么,只要覺得要說(shuō),該說(shuō),就能說(shuō)。這一天碰撞出不少火花。晚上邊吃燒烤邊聊,后面去沙灘上繼續(xù)討論技術(shù)圈的構(gòu)建(不過(guò)這個(gè)到了最后也沒有一個(gè)很好的解決方案)。
第二天主要是普元分享了他們對(duì)于SOA技術(shù)的理解和具體的實(shí)現(xiàn),從實(shí)際角度去展示了一個(gè)SOA的實(shí)實(shí)在在的成果。
收獲
其實(shí)這部分才是我要寫得重點(diǎn)。一部分一部分來(lái)說(shuō)吧。
首先是識(shí)人,這次在會(huì)上看到了很多都是自己曾經(jīng)蠻佩服的國(guó)內(nèi)開源技術(shù)論壇或者社區(qū)的創(chuàng)辦者,其實(shí)從他們身上除了看到技術(shù)人員本身所特有的對(duì)于技術(shù)的追求更多的是對(duì)于新事物的理性的學(xué)習(xí)和分析。其實(shí)我一直覺得有一點(diǎn)對(duì)于一個(gè)架構(gòu)師或者一個(gè)優(yōu)秀的開發(fā)人員來(lái)說(shuō)很重要的特質(zhì)就是開放的去學(xué)習(xí)和接受新事物,有一個(gè)包容的心態(tài)去看待每一個(gè)陌生的新生事物,那么才能不斷地進(jìn)步。而排斥和固步自封,只能最后束縛了自己的腳步,慢慢的落后與他人。SOA這個(gè)概念提出來(lái)很多年了,炒作到實(shí)質(zhì)性的轉(zhuǎn)變也就在這一兩年,具體的實(shí)踐還需要后面幾年的實(shí)施和驗(yàn)證。所以到場(chǎng)的每一位沒有一個(gè)敢說(shuō)自己完全了解SOA是什么,絕大部分都是抱著希望了解SOA實(shí)際上究竟是什么的想法而來(lái)。在討論的過(guò)程中大家就很直白的說(shuō)出了SOA是否還是一個(gè)虛概念,過(guò)去的EAI,BPM以及現(xiàn)在的EBI的區(qū)別。沒有絕對(duì)的否定,只有探討,學(xué)習(xí)和交流。我是第一認(rèn)識(shí)他們,而他們之間已經(jīng)相互很熟悉,但是和他們交流并不存在任何障礙,沒有說(shuō)牛人就是一個(gè)圈子,基本很難接觸的那種感覺。我想也正是一種Open的心態(tài)才能讓人進(jìn)步得更快。
再則談?wù)劷佑|普元的朋友。和普元的朋友交流的機(jī)會(huì)不算很多,不過(guò)在第一天的休息的時(shí)候和幾個(gè)主要的技術(shù)人員作了交流。因?yàn)槠鋵?shí)我做SCA也還算比較早,所以對(duì)于SCA還是比較熟悉的,同時(shí)普元又是SCA中國(guó)區(qū)的推廣者,所以和他們的架構(gòu)師交流SCA很容易,不像在單位里面基本就是寫好使用文檔給開發(fā)者看,如果要談具體的原理,基本沒有人看過(guò)SCA規(guī)范,我是在SCA0.96版本上作了穩(wěn)定版本的,現(xiàn)在解析使用Tuscany,再次組裝是自己做的,一來(lái)早期的Tuscany對(duì)于兩個(gè)級(jí)別的Service和Reference沒有做級(jí)別控制,二來(lái)包括WS模塊以及其他模塊有很多的Bug,所以作了再次的開發(fā)和封裝以適應(yīng)業(yè)務(wù)開發(fā)的需求,其實(shí)在我們的研討會(huì)上也說(shuō)了,開源的缺點(diǎn)就是不穩(wěn)定,不一定適應(yīng)商業(yè)開發(fā),如果商業(yè)開發(fā)的話,一般是需要穩(wěn)定在某一個(gè)版本上。同時(shí)由于SCA本身的模塊化特點(diǎn),所以部分升級(jí)和開發(fā)十分方便。這些思想和概念以及遇到的問(wèn)題和普元的開發(fā)團(tuán)隊(duì)遇到的一些問(wèn)題都十分相似,特別是在WS上面,我一度也應(yīng)為搞不定某些特殊的類型想去使用SDO,不過(guò)最后還是直接修復(fù)SCA的WS組件搞定了,也就沒有使用SDO。不過(guò)第二天的普元的服務(wù)管理和監(jiān)控讓我還是眼前一亮,這個(gè)對(duì)我來(lái)說(shuō)可能也是后續(xù)在服務(wù)框架中需要考慮和搭建的,因?yàn)槿绻扇?/span>Service API Mashup Platform,那么這部分內(nèi)容勢(shì)必是必須的。同時(shí),普元的很多高手都是SCA組織的成員,這也是我蠻羨慕的,有機(jī)會(huì)還是要和他們多多學(xué)習(xí)和交流,雖然后續(xù)我的工作重點(diǎn)不是在SCA上了,不過(guò)ASF的工作以及SCA的持續(xù)學(xué)習(xí)也是自己“私活”之一。總的感覺來(lái)說(shuō),普元的技術(shù)人員雖然話不多,但是內(nèi)功深厚,有很多可以去學(xué)習(xí)和切磋的。
最后就是關(guān)于SOA的一些感觸。第二天中午最后一點(diǎn)時(shí)間是給大家講關(guān)于這一天半的討論和交流以后對(duì)于SOA的收獲,由于時(shí)間關(guān)系,到我們的時(shí)候大家盡量簡(jiǎn)短發(fā)言,我也就說(shuō)了自己的兩點(diǎn)想法:1.先學(xué)在干在學(xué)在干。2.開發(fā)人員是我們的客戶,不要讓我們的客戶因?yàn)槭褂梦覀兊漠a(chǎn)品而痛苦不堪,應(yīng)該讓我們的客戶在使用了產(chǎn)品以后提高了生產(chǎn)效率。第一點(diǎn)什么意思呢?在我做服務(wù)框架以前,先去研究過(guò)OSGI,然后又接觸了SOA,最后接觸到了SCA?;?/span>1個(gè)多禮拜把SCA規(guī)范啃了幾遍以后,找到了使用SCA實(shí)現(xiàn)服務(wù)框架的優(yōu)勢(shì)以后,就開始搞服務(wù)框架了,看了Tuscany的源碼與設(shè)計(jì)思想,做了修改和封裝,第一階段的SCA服務(wù)框架就這么出來(lái)了。曾一度寫了關(guān)于SCA如何讓SOA落地的一些感想文章,但是后來(lái)自己都開始有些迷惑,究竟SOA是什么,僅僅就是用SCA去實(shí)現(xiàn)WS來(lái)互聯(lián)互通么?這時(shí)候去看了很多關(guān)于SCA和SOA的資料和文章,突然發(fā)現(xiàn)又陷入到了一個(gè)開發(fā)者的角度去審視SOA的陷阱。很多人說(shuō)SOA只是一種概念,沒錯(cuò),其實(shí)就是概念,那么這個(gè)概念有什么價(jià)值?其實(shí)這就是一個(gè)思考的過(guò)程。參加了BEA2007大會(huì),雖然沒有實(shí)質(zhì)性的一些Topic讓我有所收獲,但是在主題演講的時(shí)候讓我突然開了竅。其實(shí)任何技術(shù)都是有延續(xù)性的EAI和SOA有什么區(qū)別,可能很快有人站出來(lái)給你一大堆的技術(shù)變革,告訴你區(qū)別大了去了,但其實(shí)SOA的真正價(jià)值不是在于說(shuō)和過(guò)去的技術(shù)有什么區(qū)別,而是它的一種開放,協(xié)同的思想,這種思想其實(shí)更具各個(gè)行業(yè)來(lái)說(shuō)都是不同的。這次去普元的交流會(huì)上,很明顯的可以看出普元是定位在企業(yè)級(jí)應(yīng)用的開放協(xié)同角度去考慮SOA的價(jià)值以及解決方案和實(shí)現(xiàn)手段。而我從大會(huì)回來(lái),從新考慮了在阿里軟件SAAS平臺(tái)模式下我所關(guān)注的SOA的價(jià)值以及解決方案,就好比現(xiàn)在我一直在考慮的Service Mashup Platform,這是基于互聯(lián)網(wǎng)應(yīng)用的一種角度的思考。同樣不同行業(yè)的人可能都會(huì)有不同的一種思考,但都是基于SOA的一種開放,協(xié)同的思想來(lái)更具具體的使用場(chǎng)景來(lái)考慮。所以如果你拋開業(yè)務(wù)場(chǎng)景去空想SOA,那么結(jié)果就會(huì)讓自己陷入技術(shù)陷阱,用技術(shù)的不同來(lái)生硬的解釋SOA,這種就好比過(guò)去講的笑話,盲人摸象。第二點(diǎn)是我自己在推廣我的ASF的一點(diǎn)經(jīng)驗(yàn),在普元演示產(chǎn)品的時(shí)候看到了他們的studio作的很好,但是對(duì)于單元測(cè)試以及部分組件的集成測(cè)試卻做得還不是很夠,同時(shí)studio是否能夠讓程序員有便利感(我們很多在場(chǎng)的寫慣了程序的人都覺得程序員不寫幾行代碼,就會(huì)沒有創(chuàng)造感),這些可能會(huì)影響客戶(開發(fā)人員)。其實(shí)在我推廣ASF的時(shí)候有很多的架構(gòu)師都反對(duì),頂著壓力死推,最后救了我的是那些開發(fā)人員,一份匿名使用反饋加上性能測(cè)試,功能測(cè)試,最終還是堅(jiān)持了下來(lái),并被逐步接受。那么對(duì)我來(lái)說(shuō)我能夠繼續(xù)做好的就是加強(qiáng)文檔的豐富性,測(cè)試的簡(jiǎn)單性,部屬的方便性,以及開發(fā)配置的簡(jiǎn)便性(由于很多是配置型的文件,因此采用schema來(lái)做提示和交驗(yàn)我就覺得夠了,至于studio是否需要,如果能夠做得很完美當(dāng)然最好了)。
最后其實(shí)對(duì)于這次活動(dòng)來(lái)說(shuō)其實(shí)我覺得就是一次技術(shù)人員的SOA,不同的公司,不同的職業(yè),不同的職位,協(xié)同,開放的在一起發(fā)表自己的意見來(lái)互相學(xué)習(xí)和交流,本來(lái)也就是一種SOA。這兒感謝一下普元,活動(dòng)本身來(lái)說(shuō)雖然沒有對(duì)SOA做出很明確的定義,但是其實(shí)讓每一個(gè)人能夠去思考,其實(shí)問(wèn)題只有一個(gè)答案卻可以有千千萬(wàn)萬(wàn),每個(gè)人的角度不同看到的就有不同的內(nèi)涵。就好比InfoQ主編說(shuō)的每一個(gè)海灘上的沙子都有自己一個(gè)唯一標(biāo)識(shí),我們每一個(gè)江湖人士都有自己一個(gè)堂口,一個(gè)觀點(diǎn)一個(gè)看法。
開放的心態(tài)去學(xué)習(xí)和交流,我要走路還有很長(zhǎng)一段。
花絮:
白衣不小心摔了一跤,眼鏡掉到海里了,我們說(shuō)是觀音大士讓他把眼鏡作為紀(jì)念留在了海南。
畢玄同學(xué)在上岸之前換鞋子的時(shí)候,由于不買一個(gè)小MM的貝殼,被小MM一直稱作大叔,因此我們笑說(shuō)畢玄就是到了大叔的年紀(jì)了。
歡迎訪問(wèn)我的blog:http://blog.csdn.net/cenwenchu79/
msn:cenwenchu_1979@hotmail.com