完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>
標(biāo)簽 > SOA
面向服務(wù)的架構(gòu)(SOA)是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過(guò)這些服務(wù)之間定義良好的接口和契約聯(lián)系起來(lái)。
面向服務(wù)的架構(gòu)(SOA)是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過(guò)這些服務(wù)之間定義良好的接口和契約聯(lián)系起來(lái)。接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語(yǔ)言。這使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方式進(jìn)行交互。
面向服務(wù)的架構(gòu)(SOA)是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過(guò)這些服務(wù)之間定義良好的接口和契約聯(lián)系起來(lái)。接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語(yǔ)言。這使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方式進(jìn)行交互。
體系結(jié)構(gòu)
松耦合的系統(tǒng)
這種具有中立的接口定義(沒(méi)有強(qiáng)制綁定到特定的實(shí)現(xiàn)上)的特征稱為服務(wù)之間的松耦合。松耦合系統(tǒng)的好處有兩點(diǎn),一點(diǎn)是它的靈活性,另一點(diǎn)是,當(dāng)組成整個(gè)應(yīng)用程序的每個(gè)服務(wù)的內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)逐漸地發(fā)生改變時(shí),它能夠繼續(xù)存在。與之相反,緊耦合意味著應(yīng)用程序的不同組件之間的接口與其功能和結(jié)構(gòu)是緊密相連的,因而當(dāng)需要對(duì)部分或整個(gè)應(yīng)用程序進(jìn)行某種形式的更改時(shí),它們就顯得非常脆弱。
對(duì)松耦合的系統(tǒng)的需要來(lái)源于業(yè)務(wù)應(yīng)用程序需要根據(jù)業(yè)務(wù)的需要變得更加靈活,以適應(yīng)不斷變化的環(huán)境,比如經(jīng)常改變的政策、業(yè)務(wù)級(jí)別、業(yè)務(wù)重點(diǎn)、合作伙伴關(guān)系、行業(yè)地位以及其他與業(yè)務(wù)有關(guān)的因素,這些因素甚至?xí)绊憳I(yè)務(wù)的性質(zhì)。我們稱能夠靈活地適應(yīng)環(huán)境變化的業(yè)務(wù)為按需(On demand)業(yè)務(wù),在按需業(yè)務(wù)中,一旦需要,就可以對(duì)完成或執(zhí)行任務(wù)的方式進(jìn)行必要的更改。
雖然面向服務(wù)的體系結(jié)構(gòu)不是一個(gè)新鮮事物,但它卻是更傳統(tǒng)的面向?qū)ο蟮哪P偷奶娲P停嫦驅(qū)ο蟮哪P褪蔷o耦合的,已經(jīng)存在二十多年了。雖然基于 SOA 的系統(tǒng)并不排除使用面向?qū)ο蟮脑O(shè)計(jì)來(lái)構(gòu)建單個(gè)服務(wù),但是其整體設(shè)計(jì)卻是面向服務(wù)的。由于它考慮到了系統(tǒng)內(nèi)的對(duì)象,所以雖然 SOA 是基于對(duì)象的,但是作為一個(gè)整體,它卻不是面向?qū)ο蟮摹2煌幵谟诮涌诒旧?。SOA 系統(tǒng)原型的一個(gè)典型例子是通用對(duì)象請(qǐng)求代理體系結(jié)構(gòu)(Common Object Request Broker Architecture,CORBA),它已經(jīng)出現(xiàn)很長(zhǎng)時(shí)間了,其定義的概念與 SOA 相似。
然而, SOA 已經(jīng)有所不同了,因?yàn)樗蕾囉谝恍└碌倪M(jìn)展,這些進(jìn)展是以可擴(kuò)展標(biāo)記語(yǔ)言(eXtensible Markup Language,XML)為基礎(chǔ)的。通過(guò)使用基于XML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言的子集) 的語(yǔ)言(稱為 Web 服務(wù)描述語(yǔ)言(Web Services Definition Language,WSDL))來(lái)描述接口,服務(wù)已經(jīng)轉(zhuǎn)到更動(dòng)態(tài)且更靈活的接口系統(tǒng)中,非以前 CORBA 中的接口描述語(yǔ)言(Interface Definition Language,IDL)可比了。
Web 服務(wù)并不是實(shí)現(xiàn) SOA 的惟一方式。前面剛講的 CORBA 是另一種方式,這樣就有了面向消息的中間件(Message-Oriented Middleware)系統(tǒng),比如 IBM 的 MQseries。但是為了建立體系結(jié)構(gòu)模型,您所需要的并不只是服務(wù)描述。您需要定義整個(gè)應(yīng)用程序如何在服務(wù)之間執(zhí)行其工作流。您尤其需要找到業(yè)務(wù)的操作和業(yè)務(wù)中所使用的軟件的操作之間的轉(zhuǎn)換點(diǎn)。因此,SOA 應(yīng)該能夠?qū)I(yè)務(wù)的商業(yè)流程與它們的技術(shù)流程聯(lián)系起來(lái),并且映射這兩者之間的關(guān)系。例如,給供應(yīng)商付款的操作是商業(yè)流程,而更新您的零件數(shù)據(jù)庫(kù),以包括進(jìn)新供應(yīng)的貨物卻是技術(shù)流程。因而,工作流還可以在 SOA 的設(shè)計(jì)中扮演重要的角色。
此外,動(dòng)態(tài)業(yè)務(wù)的工作流不僅可以包括部門之間的操作,甚至還可以包括與不為您控制的外部合作伙伴進(jìn)行的操作。因此,為了提高效率,您需要定義應(yīng)該如何得知服務(wù)之間的關(guān)系的策略,這種策略常常采用服務(wù)級(jí)協(xié)定和操作策略的形式。
最后,所有這些都必須處于一個(gè)信任和可靠的環(huán)境之中,以同預(yù)期的一樣根據(jù)約定的條款來(lái)執(zhí)行流程。因此,安全、信任和可靠的消息傳遞應(yīng)該在任何 SOA 中都起著重要的作用。
體系結(jié)構(gòu)作用
我可以用面向服務(wù)的體系結(jié)構(gòu)做什么
對(duì) SOA 的需要來(lái)源于需要使業(yè)務(wù) IT 系統(tǒng)變得更加靈活,以適應(yīng)業(yè)務(wù)中的改變。通過(guò)允許強(qiáng)定義的關(guān)系和依然靈活的特定實(shí)現(xiàn),IT 系統(tǒng)既可以利用現(xiàn)有系統(tǒng)的功能,又可以準(zhǔn)備在以后做一些改變來(lái)滿足它們之間交互的需要。
下面舉一個(gè)具體的例子。一個(gè)服裝零售組織擁有 500 家國(guó)際連鎖店,它們常常需要更改設(shè)計(jì)來(lái)趕上時(shí)尚的潮流。這可能意味著不僅需要更改樣式和顏色,甚至還可能需要更換布料、制造商和可交付的產(chǎn)品。如果零售商和制造商之間的系統(tǒng)不兼容,那么從一個(gè)供應(yīng)商到另一個(gè)供應(yīng)商的更換可能就是一個(gè)非常復(fù)雜的軟件流程。通過(guò)利用 WSDL 接口在操作方面的靈活性,每個(gè)公司都可以將它們的現(xiàn)有系統(tǒng)保持現(xiàn)狀,而僅僅匹配 WSDL 接口并制訂新的服務(wù)級(jí)協(xié)定,這樣就不必完全重構(gòu)它們的軟件系統(tǒng)了。這是業(yè)務(wù)的水平改變,也就是說(shuō),它們改變的是合作伙伴,而所有的業(yè)務(wù)操作基本上都保持不變。這里,業(yè)務(wù)接口可以作少許改變,而內(nèi)部操作卻不需要改變,之所以這樣做,僅僅是為了能夠與外部合作伙伴一起工作。
另一種形式是內(nèi)部改變,在這種改變中,零售組織決定它還將把連鎖零售商店內(nèi)的一些地方出租給專賣流行衣服的小商店,這可以看作是采用店中店(store-in-store)的業(yè)務(wù)模型。這里,雖然公司的大多數(shù)業(yè)務(wù)操作都保持不變,但是它們需要新的內(nèi)部軟件來(lái)處理這樣的出租安排。盡管在內(nèi)部軟件系統(tǒng)可以承受全面的檢修,但是它們需要在這樣做的同時(shí)不會(huì)對(duì)與現(xiàn)有的供應(yīng)商系統(tǒng)的交互產(chǎn)生大的影響。在這種情況下,SOA 模型保持原封不動(dòng),而內(nèi)部實(shí)現(xiàn)卻發(fā)生了變化。雖然可以將新的方面添加到 SOA 模型中來(lái)加入新的出租安排的職責(zé),但是正常的零售管理系統(tǒng)繼續(xù)如往常一樣。
為了延續(xù)內(nèi)部改變的觀念,IT 經(jīng)理可能會(huì)發(fā)現(xiàn),軟件的新配置還可以以另外的一種方式加以使用,比如出租粘貼海報(bào)的地方以供廣告之用。這里,新的業(yè)務(wù)提議是通過(guò)在新的設(shè)計(jì)中重用靈活的 SOA 模型得出的。這是來(lái)自 SOA 模型的新成果,并且還是一個(gè)新的機(jī)會(huì),而這樣的新機(jī)會(huì)在以前可能是不會(huì)有的。
垂直改變也是可能的,在這種改變中,零售商從銷售他們自己的服裝完全轉(zhuǎn)變到專門通過(guò)店中店模型出租地方。如果垂直改變完全從最底層開(kāi)始的話,就會(huì)帶來(lái) SOA 模型結(jié)構(gòu)的顯著改變,與之一起改變的還可能有新的系統(tǒng)、軟件、流程以及關(guān)系。在這種情況下,SOA 模型的好處是它從業(yè)務(wù)操作和流程的角度考慮問(wèn)題而不是從應(yīng)用程序和程序的角度考慮問(wèn)題,這使得業(yè)務(wù)管理可以根據(jù)業(yè)務(wù)的操作清楚地確定什么需要添加、修改或刪除。然后可以將軟件系統(tǒng)構(gòu)造為適合業(yè)務(wù)處理的方式,而不是在許多現(xiàn)有的軟件平臺(tái)上常??吹降钠渌绞?。
正如您可以看到的,在這里,改變和 SOA 系統(tǒng)適應(yīng)改變的能力是最重要的部分。對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),這樣的改變無(wú)論是在他們工作的范圍之內(nèi)還是在他們工作的范圍之外都有可能發(fā)生,這取決于是否有改變需要知道接口是如何定義的以及它們相互之間如何進(jìn)行交互。與開(kāi)發(fā)人員不同的是,架構(gòu)師的作用就是引起對(duì) SOA 模型大的改變。這種分工,就是讓開(kāi)發(fā)人員集中精力于創(chuàng)建作為服務(wù)定義的功能單元,而讓架構(gòu)師和建模人員集中精力于如何將這些單元適當(dāng)?shù)亟M織在一起,它已經(jīng)有十多年的歷史了,通常用統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML),并且描述成模型驅(qū)動(dòng)的體系結(jié)構(gòu)(Model-Driven Architecture,MDA)。
對(duì)于面向同步和異步應(yīng)用的,基于請(qǐng)求/響應(yīng)模式的分布式計(jì)算來(lái)說(shuō),SOA是一場(chǎng)革命。一個(gè)應(yīng)用程序的業(yè)務(wù)邏輯(business logic)或某些單獨(dú)的功能被模塊化并作為服務(wù)呈現(xiàn)給消費(fèi)者或客戶端。這些服務(wù)的關(guān)鍵是他們的松耦合特性。例如,服務(wù)的接口和實(shí)現(xiàn)相獨(dú)立。應(yīng)用開(kāi)發(fā)人員或者系統(tǒng)集成者可以通過(guò)組合一個(gè)或多個(gè)服務(wù)來(lái)構(gòu)建應(yīng)用,而無(wú)須理解服務(wù)的底層實(shí)現(xiàn)。舉例來(lái)說(shuō),一個(gè)服務(wù)可以用.NET或J2EE來(lái)實(shí)現(xiàn),而使用該服務(wù)的應(yīng)用程序可以在不同的平臺(tái)之上,使用的語(yǔ)言也可以不同。.
本文主要對(duì)soa架構(gòu)的優(yōu)缺點(diǎn)進(jìn)行解析。利用SOA架構(gòu)開(kāi)發(fā)的時(shí)候,其基于松耦合的特性能給企業(yè)帶來(lái)諸多的好處,但作為一個(gè)具有發(fā)展前景的應(yīng)用系統(tǒng)架構(gòu),SOA尚...
2018-02-07 標(biāo)簽:soa 2.9萬(wàn) 0
本文詳細(xì)解說(shuō)了SOA五種基本架構(gòu)模式,面向服務(wù)的架構(gòu)(SOA)已成為連接復(fù)雜服務(wù)系統(tǒng)的主要解決方案。雖然SOA的理論很容易理解,但要部署一個(gè)設(shè)計(jì)良好、真...
2018-02-07 標(biāo)簽:SOA 2.2萬(wàn) 0
IGBT的三種安全工作區(qū)(FBSOA/RBSOA/SCSOA)
失效器件送到原廠做FA分析,看到的字眼通常包含over voltage,over current,short circuit,EOS等,但是,其失效的深...
最近和一些EE工程師聊到IGBT的技術(shù)問(wèn)題,聊的過(guò)程中發(fā)現(xiàn),他們最感興趣的問(wèn)題大多是關(guān)于功率器件極限能力的評(píng)估方法,因?yàn)檫@些問(wèn)題直接關(guān)系到了系統(tǒng)的可靠性。
微服務(wù)究竟是壓垮SOA的最后一根稻草,還是能夠拯救整個(gè)軟件工程行業(yè)的萬(wàn)能藥?人們對(duì)于微服務(wù)的概念進(jìn)行了大量的討論,其中有許多討論是關(guān)于微服務(wù)與SOA之間...
微服務(wù)、SOA 和 API三大架構(gòu)優(yōu)勢(shì)對(duì)比
在對(duì)比微服務(wù)架構(gòu)和面向服務(wù)的架構(gòu)(SOA)時(shí),幾乎不可能在它們彼此的關(guān)系上達(dá)成一致意見(jiàn)。如果應(yīng)用程序編程接口(API) 再加入混戰(zhàn),就會(huì)讓理解它們的差異...
QNX在汽車領(lǐng)域的基礎(chǔ)軟件操作系統(tǒng)地位以及深度的覆蓋率
有硬實(shí)時(shí)、微內(nèi)核、模塊化、弱耦合、分布式的特點(diǎn),從1980年誕生之初就是基于SOA架構(gòu)設(shè)計(jì),基于Client-Server的模型,
2022-10-20 標(biāo)簽:SOARTOS實(shí)時(shí)操作系統(tǒng) 1.2萬(wàn) 0
SOA是什么_SOA主要的開(kāi)發(fā)方法和工具分析
本文主要對(duì)SOA是什么以及SOA主要的開(kāi)發(fā)方法和工具進(jìn)行分析。面向服務(wù)架構(gòu)soa以其獨(dú)特的優(yōu)勢(shì)越來(lái)越受到企業(yè)的重視,它可以根據(jù)需求通過(guò)網(wǎng)絡(luò)對(duì)松散耦合的粗...
2018-02-07 標(biāo)簽:SOA 1.1萬(wàn) 0
電源工程師最怕什么?炸機(jī)!用著用著就壞了,莫名其妙MOS管就炸了,真是又怕又恨,可到底是哪里出問(wèn)題了呢?這一切都和SOA相關(guān)。 我們知道開(kāi)關(guān)電源中MOS...
在汽車環(huán)境中,它們必須能夠以可接受的可靠性水平耗散能量。因此,有了非常好的可靠性級(jí)別,就有必要定義這種強(qiáng)大的功能(多虧了SOA)。
基于SOA技術(shù)的MES制造執(zhí)行系統(tǒng)與傳統(tǒng)MES架構(gòu)的資料對(duì)比概述立即下載
類別:品質(zhì)管理資料 2018-09-13 標(biāo)簽:ERPMESSOA
基于ESB的SOA架構(gòu)在汽車行業(yè)的應(yīng)用研究顧治華立即下載
類別:模擬數(shù)字論文 2017-03-19 標(biāo)簽:soaesb
Introduction to IBM Products i立即下載
類別:通信網(wǎng)絡(luò) 2009-06-10 標(biāo)簽:SOA
支持SOA系統(tǒng)開(kāi)發(fā)的服務(wù)注冊(cè)庫(kù)的介紹和實(shí)例說(shuō)明立即下載
類別:嵌入式開(kāi)發(fā) 2018-11-28 標(biāo)簽:IBMWebSOA
類別:通信網(wǎng)絡(luò) 2019-03-04 標(biāo)簽:電子元器件計(jì)算機(jī)SOA
基于SOA和開(kāi)源模式的ERP系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)立即下載
類別:網(wǎng)絡(luò)協(xié)議論文 2010-01-22 標(biāo)簽:SOA開(kāi)源模式
一種商品房預(yù)售資金監(jiān)管信息共享平臺(tái)架構(gòu)(基于SOA和ESB)立即下載
類別:通信網(wǎng)絡(luò) 2017-10-30 標(biāo)簽:SOA信息共享ESB
基于SOA體系ELearning教學(xué)系統(tǒng)的研究石永生立即下載
類別:模擬數(shù)字論文 2017-03-17 標(biāo)簽:soaelearning教學(xué)系統(tǒng)
MES適應(yīng)智能工廠需要哪些核心技術(shù)要求?立即下載
類別:品質(zhì)管理資料 2018-08-07 標(biāo)簽:MESSOA智能工廠
看懂MOSFET數(shù)據(jù)表系列第 2 部分——安全工作區(qū) (SOA)
嗨,我的FET狂熱愛(ài)好者同行們,歡迎回到看懂MOSFET數(shù)據(jù)表博客系列的第2部分!作為一名功率MOSFET的產(chǎn)品營(yíng)銷工程師,在FET數(shù)據(jù)表的所有內(nèi)容中,...
本文對(duì)MOS失效原因總結(jié)以下六點(diǎn),然后對(duì)1,2重點(diǎn)進(jìn)行分析: 1、雪崩失效(電壓失效),也就是漏源間的BVdss電壓超過(guò)MOSFET的額定電壓,并且超過(guò)...
偏振偏振是光的一個(gè)非常重要的特性。眾所周知,光是一種電磁波??梢詫⑵窭斫鉃楣獾恼駝?dòng)方向,如果光的波動(dòng)是確定方向,則稱之為偏振光,激光是最常見(jiàn)的偏振光;...
“服務(wù)接口”直白的理解就是服務(wù)與外界進(jìn)行聯(lián)系的接口,也就是服務(wù)模塊與外界溝通時(shí)的信息出入口。如果你寫過(guò)程序,那么一個(gè)能夠被其他模塊調(diào)用的函數(shù)名稱,或者一...
SOA架構(gòu)特點(diǎn): 系統(tǒng)集成:站在系統(tǒng)的角度,解決企業(yè)系統(tǒng)間的通信問(wèn)題,把原先散亂、無(wú)規(guī)劃的系統(tǒng)間的網(wǎng)狀結(jié)構(gòu),梳理成 規(guī)整、可治理的系統(tǒng)間星形結(jié)構(gòu),這一步...
2021-07-31 標(biāo)簽:SOA 6314 0
什么是TEC?SOA半導(dǎo)體光放大器中TEC所起的作用
SOA為什么要用TEC控溫 1、溫度變化會(huì)引起SOA芯片中心波長(zhǎng)的漂移。溫度越高,中心波長(zhǎng)會(huì)向長(zhǎng)波方向移動(dòng)。 2、溫度變化會(huì)引起SOA芯片增益譜的變...
SOA架構(gòu)和微服務(wù)架構(gòu)的主要區(qū)別
SOA和微服務(wù)架構(gòu)一個(gè)層面的東西,而對(duì)于ESB和微服務(wù)網(wǎng)關(guān)是一個(gè)層面的東西,一個(gè)談到是架構(gòu)風(fēng)格和方法,一個(gè)談的是實(shí)現(xiàn)工具或組件。SOA架構(gòu)和微服務(wù)架構(gòu)有...
編輯推薦廠商產(chǎn)品技術(shù)軟件/工具OS/語(yǔ)言教程專題
電機(jī)控制 | DSP | 氮化鎵 | 功率放大器 | ChatGPT | 自動(dòng)駕駛 | TI | 瑞薩電子 |
BLDC | PLC | 碳化硅 | 二極管 | OpenAI | 元宇宙 | 安森美 | ADI |
無(wú)刷電機(jī) | FOC | IGBT | 逆變器 | 文心一言 | 5G | 英飛凌 | 羅姆 |
直流電機(jī) | PID | MOSFET | 傳感器 | 人工智能 | 物聯(lián)網(wǎng) | NXP | 賽靈思 |
步進(jìn)電機(jī) | SPWM | 充電樁 | IPM | 機(jī)器視覺(jué) | 無(wú)人機(jī) | 三菱電機(jī) | ST |
伺服電機(jī) | SVPWM | 光伏發(fā)電 | UPS | AR | 智能電網(wǎng) | 國(guó)民技術(shù) | Microchip |
Arduino | BeagleBone | 樹(shù)莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 華秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |