加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • IT行業(yè)的核心是數(shù)據(jù)和流程
    • ?SOA的基本原則?
    • ?汽車與IT的異同點(diǎn)?
    • ?總結(jié)?
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

SOA是汽車軟件的救命稻草嗎?

2023/08/16
2624
閱讀需 15 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

SOA(Service-oriented architecture)是面向服務(wù)的架構(gòu),是IT行業(yè)在2000年左右的時(shí)候提出來的一個(gè)概念,其本質(zhì)是一種架構(gòu)的風(fēng)格。而不是具體的技術(shù),更不是具體的標(biāo)準(zhǔn)。

目前,在IT行業(yè),SOA儼然已經(jīng)成為了過時(shí)的東西,很少有人再去言必稱SOA了,取而代之的是微服務(wù)、中臺、去中臺化,乃至云原生等一系列新的概念。究其原因,IT行業(yè)的業(yè)務(wù)在不斷更新,技術(shù)也在不斷升級,原有的架構(gòu)概念已經(jīng)不再適合當(dāng)前的行業(yè)現(xiàn)狀了。

任何架構(gòu)都只能解決某一時(shí)刻的某一個(gè)企業(yè)的某一類問題,沒有絕對的仙丹妙藥。企圖畢其功于一役的想法是幼稚的。因此,軟件開發(fā)業(yè)內(nèi)才有這樣一句名言“軟件開發(fā)沒有銀彈”(看過吸血鬼系列電影的朋友一定懂得銀彈的含義)。

讓我們回到汽車行業(yè),當(dāng)前中國汽車界在風(fēng)風(fēng)火火的進(jìn)行著SOA“革命”,甚至成立了幾個(gè)專門的行業(yè)組織來試圖規(guī)范大家的SOA架構(gòu)及其中的各種細(xì)節(jié)定義。回想當(dāng)初AUTOSAR組織成立的時(shí)候,幾個(gè)大的OEM和Tier 1在已有的基礎(chǔ)上共同的定義了AUTOSAR的標(biāo)準(zhǔn)。而現(xiàn)在卻有人在根本沒有任何實(shí)踐基礎(chǔ)支撐的情況下就定義一個(gè)如此宏大的標(biāo)準(zhǔn),有點(diǎn)令人匪夷所思。

正如我在《智能汽車:電子電氣架構(gòu)詳解》一書中所說的:“所有的流程都是最佳實(shí)踐的總結(jié)”。技術(shù)標(biāo)準(zhǔn)更是如此,如果沒有最佳實(shí)踐,怎么能夠有總結(jié)呢?在PPT上總結(jié)的、未經(jīng)實(shí)踐考驗(yàn)的東西,怎么可能知道是不是最佳的呢?也許某些人真的有未卜先知的能力,但我始終相信“實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)”。而且我也擔(dān)心中國汽車行業(yè)這幾年通過電動化“彎道超車”好不容易獲得的一點(diǎn)點(diǎn)優(yōu)勢被人整體帶偏了。

IT行業(yè)的核心是數(shù)據(jù)和流程

因?yàn)镾OA起源于IT行業(yè),那么我們就先看看SOA在IT行業(yè)是如何被提出和發(fā)展的。

各位看官應(yīng)該大都有以下這樣的經(jīng)歷:

在你所經(jīng)歷的某些企業(yè)中有著眾多的IT系統(tǒng):比如,績效管理系統(tǒng)、考勤系統(tǒng)、工資系統(tǒng)、報(bào)銷系統(tǒng)等……這些系統(tǒng)最初大都是孤立的,辦理不同的業(yè)務(wù)需要登錄不同的系統(tǒng),它們之間互不相連,賬號也互不相通;以至于每天可能要打開N個(gè)系統(tǒng)才能正常工作。怎么解決這些系統(tǒng)壁壘呢?由于以上這些系統(tǒng)的底層數(shù)據(jù)都和員工信息之間相關(guān)的,因此,可以以員工信息為基礎(chǔ),在上述的業(yè)務(wù)之間進(jìn)行打通,應(yīng)用端形成統(tǒng)一的用戶界面;在此界面背后,以往孤立的各個(gè)系統(tǒng)作為服務(wù)提供方仍然可以被持續(xù)使用——為了打通各個(gè)系統(tǒng),就需要在應(yīng)用端與服務(wù)提供端之間建立一條統(tǒng)一的服務(wù)總線,這條總線被稱為ESB(Enterprise Service Bus,企業(yè)服務(wù)總線)。

有了ESB之后,就可以在這個(gè)框架下不斷地拓展服務(wù)和應(yīng)用,而且可以近似隨意的在這個(gè)架構(gòu)之上進(jìn)行業(yè)務(wù)流程編排。原來的各個(gè)業(yè)務(wù)實(shí)體轉(zhuǎn)變?yōu)榉?wù),每個(gè)服務(wù)都是一個(gè)相對獨(dú)立的實(shí)體,可以提供對某些數(shù)據(jù)所對應(yīng)的業(yè)務(wù)活動的處理。這就是SOA。

(單個(gè)服務(wù)的內(nèi)部結(jié)構(gòu))

然而,隨著SOA解決方案復(fù)雜性的增加,潛在服務(wù)組合配置的復(fù)雜性也隨之增長。提出SOA的目的是為了將應(yīng)用與服務(wù)進(jìn)行解耦,解耦的本質(zhì)是為了去中心化。但是做好一個(gè)SOA解決方案的前提就是要將各個(gè)可能涉及的應(yīng)用進(jìn)行集中規(guī)劃與考量,通過BPEL(Business Process Execution Language)來組裝,同步對各個(gè)服務(wù)進(jìn)行集中管理——這樣的環(huán)節(jié)又會催生一隊(duì)專職流程編排的Team來掌握所有業(yè)務(wù)行為,這群人需要具備架構(gòu)設(shè)計(jì)、流程分析、系統(tǒng)分析的能力,因?yàn)樗袠I(yè)務(wù)變化都跟他們有關(guān)系,所以他們就很容易變成最大的組織瓶頸。

于是IT行業(yè)在十幾年前便開始了新的探索與實(shí)踐,提出了微服務(wù)(去中心化的SOA)和中臺等一系列概念。

?SOA的基本原則?

根據(jù)《SOA架構(gòu):服務(wù)和微服務(wù)分析及設(shè)計(jì)》一書的定義,SOA的設(shè)計(jì)應(yīng)該遵守如下的基本原則:

標(biāo)準(zhǔn)化服務(wù)契約

    • ——同一服務(wù)目錄中的服務(wù)符合相同的契約設(shè)計(jì)標(biāo)準(zhǔn)。

服務(wù)松耦合

    • ——服務(wù)契約降低消費(fèi)者禍合需求,并且它們自身與它所在的周圍環(huán)境解耦。

服務(wù)抽象

    • ——服務(wù)契約只包含基本信息,以及那些僅限于服務(wù)契約中發(fā)布的信息。

服務(wù)可重用性

    • ——服務(wù)包含并顯示不可知的邏輯,可以定位為可重用的企業(yè)資源每當(dāng)構(gòu)建一個(gè)服務(wù)時(shí),我們會尋找方法使其潛在能力得到最佳發(fā)揮而非僅僅針對一個(gè)目的。面向服務(wù)極大地強(qiáng)調(diào)了重用,因此它成為設(shè)計(jì)過程的核心部分,并且也是關(guān)鍵服務(wù)模型的基礎(chǔ)。

服務(wù)自治

    • ——服務(wù)對其內(nèi)部的運(yùn)行時(shí)執(zhí)行環(huán)境進(jìn)行高度的把控。

服務(wù)無狀態(tài)

    • ——服務(wù)通過必要時(shí)推遲狀態(tài)信息的管理來最小化資源消耗。過度的狀態(tài)信息管理可能會損害服務(wù)的可用性以及其行為的可預(yù)測性。

服務(wù)可發(fā)現(xiàn)性

    • ——服務(wù)補(bǔ)充了交互元數(shù)據(jù),通過它們可以有效地發(fā)現(xiàn)和詮釋服務(wù)。

服務(wù)可組合性

    ——服務(wù)是有效的組合參與者,無須考慮組合物的大小和復(fù)雜性。

以上的基本原則,在IT行業(yè)都是基本適用的。因?yàn)橐粋€(gè)企業(yè)內(nèi)部的各個(gè)IT系統(tǒng)之間雖然有一定的關(guān)聯(lián)性,但是基本上都可以獨(dú)立運(yùn)行,新增的服務(wù)也可以隨時(shí)上線。因?yàn)楦鱾€(gè)服務(wù)之間的依賴性相對比較低。比如某寶上的商品貨架管理服務(wù)與公益服務(wù)之間的關(guān)聯(lián)性就很低。因?yàn)樗麄兠嫦虿煌臄?shù)據(jù)源,而且業(yè)務(wù)相關(guān)性也不大。

?汽車與IT的異同點(diǎn)?

近年來SOA的理念被引入了汽車行業(yè),眾多的參與者趨之若鶩。但如果從行業(yè)的特點(diǎn)來看,IT行業(yè)與汽車行業(yè)有著眾多的本質(zhì)差異:

1. 業(yè)務(wù)的控制對象不同。IT行業(yè)主要是面向數(shù)據(jù)(Data Oriented)。但汽車行業(yè)面向的卻是硬件(Device Oriented)。

IT所處理的業(yè)務(wù)絕大多數(shù)是基于數(shù)據(jù)或數(shù)據(jù)庫的,單一的數(shù)據(jù)記錄可能是有狀態(tài)的,但不同的數(shù)據(jù)條目卻可以完全獨(dú)立,從而形成一種無狀態(tài)的情況。而且數(shù)據(jù)的訪問是可以并發(fā)的。同時(shí),IT的服務(wù)建立在一個(gè)基于互聯(lián)網(wǎng)的開放生態(tài)系統(tǒng)之上的。其所使用的硬件主要是服務(wù)器和網(wǎng)絡(luò),具有標(biāo)準(zhǔn)化的特點(diǎn),也就是可以隨時(shí)進(jìn)行擴(kuò)展和遷移。

汽車行業(yè)上中軟件控制的對象是各種非標(biāo)準(zhǔn)化的I/O設(shè)備,比如各種電機(jī)、電磁閥、傳感器、按鍵等等。這些硬件是有狀態(tài)的,而且是非標(biāo)的,更加無法實(shí)現(xiàn)并發(fā)的訪問與控制,天然的就無法滿足服務(wù)無狀態(tài)的要求。數(shù)據(jù)可以并發(fā),硬件的狀態(tài)卻不可以并發(fā),在某一個(gè)確定的時(shí)間只能有唯一的一個(gè)狀態(tài)。同時(shí),汽車生產(chǎn)之后再想加裝硬件就基本沒有辦法了,即使可以增加內(nèi)存和算力,但傳感器和執(zhí)行器卻沒有辦法再增加了。(如果你非要說增加一個(gè)手機(jī)支架也算數(shù)的話,咱們就不需要再聊了)

2. 業(yè)務(wù)量變化速度不同。IT行業(yè)的業(yè)務(wù)量變化可能非常大:比如雙11的時(shí)候比平時(shí)的業(yè)務(wù)量可能要高一個(gè)數(shù)量級。對于汽車而言,每臺車上的業(yè)務(wù)量在設(shè)計(jì)之時(shí)便可以進(jìn)行精確的估計(jì),對拓展性的要求并不高。因?yàn)闃I(yè)務(wù)能力已經(jīng)由其所匹配的硬件及其相應(yīng)的功能限制了。目前看到對功能擴(kuò)展要求比較高的只有多媒體主機(jī)。即使是智能駕駛的功能,也不是隨意可以擴(kuò)展的,更多的是對性能提升的要求,改變的是軟件算法本身的能力。

3. 成本敏感度不同。IT行業(yè)軟硬件都是被完全復(fù)用的、是集中化部署的,對于那些大企業(yè)而言部署幾臺服務(wù)器不重要,客戶的滿意度才是最重要的,客戶使用服務(wù)的時(shí)候也不會關(guān)心后面的服務(wù)器硬件成本是多少。而汽車是單臺售賣的,對于其中每個(gè)部件都是要計(jì)算成本的,客戶買車的時(shí)候不可能不去關(guān)心成本。無論你部署一個(gè)控制器和兩個(gè)控制器,只要功能不增加,就沒人愿意為多出來的成本買單。

PS:采用SOA就必然要使用以太網(wǎng)等,大幅度增加了軟硬件的成本。而且由于服務(wù)要耗費(fèi)更多的算力資源,也必然要求SOC或MCU的性能更高,從而讓成本進(jìn)一步增加。

4. 實(shí)時(shí)性要求不同。大多數(shù)IT業(yè)務(wù)對實(shí)時(shí)性都沒有什么要求,瀏覽網(wǎng)頁或下單的時(shí)候等待一秒還是5秒的差異并不那么明顯。但汽車上的大部分控制功能卻是以毫秒來計(jì)算的,一個(gè)信息晚了半秒都可能會帶來安全問題。

PS:在實(shí)時(shí)性方面,可能某些人要說以太網(wǎng)的速度遠(yuǎn)比CAN總線快,應(yīng)該有更好地實(shí)時(shí)性。實(shí)際上,由于以太網(wǎng)本身的機(jī)制和需要多層復(fù)雜的軟件處理,導(dǎo)致處理以太網(wǎng)的消息在很多時(shí)候比CAN總線等要慢的多,而且時(shí)間上也有一定的不確定性。

5. 業(yè)務(wù)重用度與功能迭代速度不同。IT行業(yè)的各個(gè)業(yè)務(wù)模塊是隨時(shí)可能被重用的,這一點(diǎn)只要看看微信等APP在不停增加的新功能就知道了。而在汽車上,尤其對于傳統(tǒng)的車身控制、底盤和動力等板塊,想創(chuàng)造出一個(gè)新功能難上加難,更加離不開新硬件的加入。大家可以看看眾多來自IT行業(yè)的新勢力在過去的這么多年里面究竟搞出了多少有價(jià)值的創(chuàng)新功能就清楚了。而且,這些新功能沒有一個(gè)是只有通過SOA才能實(shí)現(xiàn)的。在這些領(lǐng)域搞那么多SOA就如同把一個(gè)人扔到一座荒島之上,然后給他一百萬美元,并且對他說:你隨便花吧!

PS:功能迭代速度與業(yè)務(wù)量的差異也造成了IT行業(yè)的通信與汽車內(nèi)網(wǎng)絡(luò)通信的確定性不同。IT行業(yè)的網(wǎng)絡(luò)通信是非確定性通信的:內(nèi)容與數(shù)量隨時(shí)都可能發(fā)生變化,在設(shè)計(jì)之初難以預(yù)測。而汽車上的通信都是設(shè)計(jì)好的,不會有那么多的非預(yù)期的業(yè)務(wù)發(fā)生,帶寬也是可以準(zhǔn)確估算的。

?總結(jié)?

從以上的分析中可以看出:

    汽車行業(yè)與IT行業(yè)有著諸多本質(zhì)的不同點(diǎn),如果非要生搬硬套IT行業(yè)的東西,不免有削足適履之嫌,必然會引起諸多的問題。SOA在IT行業(yè)已經(jīng)不是最新的東西了。如果想從IT行業(yè)借鑒一些經(jīng)驗(yàn),也許可以從微服務(wù)或者中臺等技術(shù)入手,這兩種技術(shù)也許更加適合汽車上的分布式、非標(biāo)準(zhǔn)、迭代速度慢的硬件系統(tǒng),對于未來的集中式計(jì)算架構(gòu)也許更加適合。消費(fèi)者絕對不會因?yàn)槟闶荢OA架構(gòu)就會更加青睞某個(gè)車,更加不會多掏錢。汽車行業(yè)內(nèi)的自嗨和和自我感動與崇拜如果不能轉(zhuǎn)換為商業(yè)上的成功,就必然淪為一場鬧劇。?在沒有確定的把握時(shí)就把身家性命都壓在某個(gè)尚未被證實(shí)的概念上,無疑是在賭博。萬一這個(gè)概念只是對手的煙幕彈怎么辦?將全車的幾十個(gè)控制器全部重構(gòu)的代價(jià)與投入是絕大多數(shù)OEM都承擔(dān)不起的,如果你不是家里有礦,還是謹(jǐn)慎一些為好。對于新技術(shù),既不要盲目追逐,也不要完全排斥,適度投入跟隨也許最合適。萬一SOA變成了第二個(gè)元宇宙就不好玩了。踏踏實(shí)實(shí)的把車做好比什么都強(qiáng),每天都想著換道超車的結(jié)果往往是掉進(jìn)溝里。既然SOA最初的發(fā)展是面向數(shù)據(jù)的,那么就應(yīng)該仔細(xì)想想汽車上的哪些功能數(shù)據(jù)強(qiáng)相關(guān)的,先嘗試把這些東西SOA化,可能更加靠譜一些。

 

侯旭光,?智能汽車領(lǐng)域資深技術(shù)專家,在汽車電子電氣相關(guān)領(lǐng)域從業(yè)超過20年,現(xiàn)就職于廣汽集團(tuán)汽車工程研究院,電子電氣架構(gòu)總師;曾就職于西門子和吉利汽車,在吉利汽車從事整車電子電氣架構(gòu)開發(fā)和車身電子產(chǎn)品的開發(fā)與管理工作;中國汽車工程學(xué)會智能網(wǎng)聯(lián)汽車系統(tǒng)架構(gòu)分會委員。

侯哥工作感悟:侯哥?@Roy 專注汽車電子電氣架構(gòu)開發(fā)

刪改編:娜可不敢

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險(xiǎn)等級 參考價(jià)格 更多信息
ADG1613BRUZ 1 Analog Devices Inc 1 Ω Typical On Resistance, ±5 V, +12 V, +5 V, and +3.3 V Quad SPST Switches

ECAD模型

下載ECAD模型
$5.82 查看
E-L6219DS013TR 1 STMicroelectronics Stepper Motor Driver

ECAD模型

下載ECAD模型
$5.11 查看
L6234PD013TR 1 STMicroelectronics Three phase motor driver

ECAD模型

下載ECAD模型
$11.17 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

既搞過通信,也做過零部件,正在做整車;既做過開發(fā),也搞過測試,參與過生產(chǎn);經(jīng)歷過民企、合資,也去過外資、國企;既醉心于工程技術(shù),也研究人文歷史;豐富的經(jīng)歷,跨界的經(jīng)驗(yàn),造就了不一樣的思考角度。

TA的熱門作品
車圈兒好卷??!
  • 集中式架構(gòu)-想集中要咋辦?
  • 集中式架構(gòu)-多集中算集中?
  • 管理之道:汽車電子電氣系統(tǒng)-四類關(guān)系管理解讀
  • 從無到有—如何開發(fā)汽車電子電氣架構(gòu)
  • 查看更多