毛新生:這個(gè)問題非常有趣。在SOA世界里,每個(gè)服務(wù)與另外一個(gè)服務(wù)都是以松散耦合方式結(jié)合在一起的,這就要談到SOA靈活性的由來(lái)。在集成架構(gòu)里,ESB作為集成架構(gòu)的模式,作為集成架構(gòu)的最佳實(shí)踐,它的目的就是為了解耦服務(wù)的請(qǐng)求者和提供者。它提供異構(gòu)環(huán)境下的連通性,你用什么技術(shù)和語(yǔ)言都沒關(guān)系,ESB可以幫你打通。
毛新生:ESB可以幫你進(jìn)行API和消息的轉(zhuǎn)換,這邊是Java那邊是CA都沒關(guān)系。緊接著幫你做路由,你在哪兒我不知道,你可以在美國(guó)也可以在我身邊,我不需要關(guān)心這事,ESB可以幫助我找到你在哪里,幫我把信息傳到那地方。甚至可以不需要知道對(duì)方是誰(shuí),只要把提供服務(wù)的要求告訴ESB,ESB就會(huì)去找到一個(gè)你制訂要求的服務(wù),然后幫你綁定,幫你做路由,幫你做必要的轉(zhuǎn)換。
SOA的世界里有了ESB的架構(gòu)元素之后,服務(wù)的請(qǐng)求者和服務(wù)的提供者之間不需要關(guān)心對(duì)方是誰(shuí),也不需要關(guān)心對(duì)方用的是什么技術(shù),在哪里。因此在SOA的世界里服務(wù)之間的關(guān)系永遠(yuǎn)都是松散耦合的。
毛新生:第二個(gè)問題談到組裝,組裝本身遵循的也是服務(wù)組裝的技術(shù)和模式,一般都支持描述性的規(guī)范。這些描述性的語(yǔ)言可以說(shuō)明一個(gè)業(yè)務(wù)流程由哪些SOA世界里的服務(wù)協(xié)作完成。協(xié)作的關(guān)系是什么?無(wú)外乎是控制的過程,不同的步驟是由不同的服務(wù)做完,控制的過程只是描述性的東西,隨時(shí)可以改變控制的過程。雖然你的業(yè)務(wù)流程比較容易發(fā)生變化,但調(diào)整就可以了——下面的服務(wù)是不用動(dòng)的,所以這種組合的過程也是比較靈活,比較敏捷,適于變化的。
聯(lián)系客服