主頁 > 軟體設計 > X86 “將死“?RISC-V 正當立

X86 “將死“?RISC-V 正當立

2021-02-20 11:35:57 軟體設計

圖片

圖片

作者 | 馬超 責編 | 張紅月、屠敏

出品 | CSDN(ID:CSDNnews)

“采罷百花成芯后,為誰辛苦為誰甜”,

2020年全球芯片的市場規模約為1500億美元,雖然桌面與移動終端市場方面的增長乏力,不過以物聯網和云資料中心為代表的新興領域迅速接棒形成行業新的增長極,因此整體而言,芯片行業依舊蓬勃發展,而且芯片的撬動能力強,行業的上游是以 EDA 為代表的工業軟體,下游則輻射工業制造、云計算等規模破萬億美元的巨大 IT 市場,小小的芯片竟能支撐起上下游十幾個產業鏈的運轉,堪稱是數字經濟時代的絕對支柱,

目前在經濟學界也開始有聲音指出算力比 GDP 等傳統經濟指標更能反應一個國家的經濟水平,而芯片作為數字經濟的核心底座,歷來是科技產業的必爭高地,正因如此我們看到去年年中,國家正式將資料中心、智能計算中心等算力基礎設施明確納入新型基礎設施范圍,定入國家戰略,

同時,去年以來圍繞芯片領域接連不斷的并購布局,也印證了云計算與物聯網正在成為行業的第二增長極,去年底英偉達宣布以 400 億美元的價格從軟銀手中收購 Arm,補強自己在 CPU 方面的短板,以 CPU+GPU 的方式正式進軍云資料中心;10 月初,英特爾剝離 NAND 存盤業務,以 90 億美元的價格賣給了 SK 海力士,將其重心聚焦于資料中心和 PC 業務;最近 AMD 收購 Xilinx,同樣是希望通過資本手段謀求增長,向未來空間更大的資料中心投入更多資源,這幾項并購案有整合有切割,但總體上看芯片行業的三巨頭英特爾、英偉達和AMD 的目標都非常明確,即自身在云資料中心領域的競爭力,

另外一個增長極物聯網領域,RISC-V 憑借其開放開源而且零授權費用的優勢,迅速在低功耗,低延時的嵌入式 IoT 方面嶄露頭角,尤其值得一提的是從去年開始中國廠商擁抱 RISC-V 的動作頻頻,比如紫光展銳推出了采用 RISC-V 處理器的 TWS 真無線藍牙耳機芯片—春藤 5882,國內實時作業系統的領導者RT-Thread 也開始在其官方 IDE 中加入了對于 RISC-V 芯片的支持,

圖片

根據 Semico Research 的預測,到 2025 年,市場有 624 億個 RISC-V CPU 核心售出,將在物聯網領域形成與 ARM 分庭抗禮的新力量,可以說 RISC-V 未來可期,在中國發展前景更加廣闊,

圖片

指令集 CPU 的靈魂

“本似云煙易散盡,過眼回眸惱多愁”,幾十年前的程式員應該怎么也不會想到現在的匯編語言除了在作業系統內核、黑客入侵等少數領域還有應用以外,在其它場景幾乎用者廖廖,甚至在編程語言前百強的榜單中都找不到匯編的位置,

要知道在上世紀七、八十年代,程式員的幾乎只能使用匯編語言進行編程,像嚴援朝、求伯君等大神級的人物,都是匯編語言的頂尖高手,那個時代的程式員既不是面向程序也不是面向物件編程,而是面向指令集編程,

在計算機中,讓 CPU 執行某種運算、處理功能的命令稱為指令,是計算機運行的最小的功能單位,指令集是指芯片全部指令的集合,是計算機系統能提供的全部功能體現,而在芯片設計師設計一款芯片時首先要考慮芯片所能提供的功能,并按此需求設計指令集,然后按指令集中的每條指令在硬體電路上實作,

目前指令集的含義已經不單單是指令本身的集合了,還包括了指令格式、尋址方式和資料形式,所以,各計算機執行的指令系統不僅決定了機器所要求的能力,而且也決定了指令的格式和機器的結構,從另一個角度上講,一種指令格式也需要具有與之相對應的指令集,為此,設計指令集時,要充分指令格式、型別及尋址等多個方面的因素,如果說芯片是計算機的核心,那么指令集就是芯片的核心,指令集與機器的硬體結構密切相關,因此功能齊全、通用性強的指令集,對于計算機系統來說至關重要,

與現在的程式員可以隨便選用各種 Java、Python、Go 等高級語言不同,在四十幾年以前,計算機系統的記憶體、存盤、CPU 等等資源都非常匱乏,甚至連 C 語言相對匯編付出 5% 左右的性能代價都很難被人們接受,因此當時的指令集往往傾向于提供復雜的功能,這也是復雜指令集(CISC)流派出現的根本原因,因此 CISC 能夠幫助那個年代匯編語言的程式員以更少的代碼,完成更多的作業,

不過當時那個時代也是摩爾定律絕對支配的時代,芯片在性能、功能等各個方面都在快速提升,存盤的價格也在快速下降,高級語言在性能及存盤空間上的那一點點代價也就可以忽略了,因此 Pascal、Basic、C 等高級語言逐漸流行,這使得程式員編程的模式由直接面向指令集編程,變成了面向編譯器編程,編譯器再面向指令集編程,

指令集開始成為廣大程式員不需要再特別關注的隱秘角落,而 X86 這種 CISC 風格的指令集,其所提供的很多指令編譯器很少用到,甚至部分 X86 的指令,連編譯器的開發人員都不知道如何使用,這樣的大背景使指令集瘦身成了大勢所趨,這也是簡單指令集(RISC)發展壯大的背景,

圖片

RISC vs CISC,成熟是變得復雜還是返璞歸真

機器指令往往需要完成復雜的操作,我們知道從本質上講,一切計算操作都可以用加法來進行擬合,比如乘法是幾個數連加,除法是若干數連減,因此從這個角度而言,一條復雜指令完全可以通過若干條簡單指令的組合來完成相應功能,

RISC 的邏輯是大道至簡,因為有 20% 的指令被呼叫 80%,把能精簡的指令全部精簡掉,只保留核心功能這樣無論對芯片設計人員,還是編譯器的開發者來說都降低了負擔,而且由于精簡,以 ARM 和 RISC-V 為代表的 RISC 風格指令集芯片往往會非常省電,這也是 ARM 快速占領移動市場的關鍵所在,尤其是在 ARM 的大小核設計是他們在移動市場致勝的法寶,其中大核專門針對性能優化,小核專門針對功耗優化,可謂忙時用大核干得歡,閑時用小核省電爽,

CISC 的理念是 20% 的復雜指令會消耗 CPU 80% 的處理時間,因此在以 X86 代表的 RISC 風格指令集就專門設定了 SSE(Stream SIMD Extentions)資料流單指令多資料擴展,從奔騰三代開始英特爾的 CPU 提供了 8 個 128 位的暫存器進行 SIMD 操作,

我們知道目前主流的 CPU 都是 64 位的,也就是 CPU 每次都只能處理對于 64 位長的資料,并得到一個 64 位長的結果,比 64 位更長的資料只能通過多條指令的組合來處理,而 SSE 的擴展恰恰就是給 64 位的 CPU 增加了 128 位長的暫存器,使 CPU 可以一次性處理 128 位長的資料,并得到 128 位長的結果,從而大幅提高雙精度資料的處理效率,這對于科學計算的提升巨大,因此我們看到很多用于科學計算的軟體包底層都是使用 C 語言行內嵌入 SSE 匯編指令的代碼進行性能優化,并取得極好的效果,

不過這幾十年來的相愛相殺,目前 RISC 與 CISC 之間的界限已經不再那么涇渭分明了,比如目前英特爾就嘗試將 X86 指令集中的復雜指令轉換成為微操作(UOPS),從而融合 RISC 的思想精髓,而包括 RISC-V 及 ARM 在內的 RISC 也開始引入協處理器,專門處理浮點或者 FPGA 的運算需求,

而且我們知道一條 CPU 指令基本分為取指(FI)、譯碼(DI)、計算運算元地址(CO)、取運算元(FO)、執行指令(EI)、寫運算元(WO)等幾個并行處理的程序段,如果 CPU 能同時對六條指令進行加工,將大大加快程式的執行速度,而想獲得高的流水線并行度,就涉及到指令預測與亂序發射等技術,而在這方面無論是 RISC 還是 CISC 所使用的技術方案幾乎都是相同的,可以說目前指令集之間除了 IP 授權體系不同以外,具體的實作方式已經走向融合,而 RISC-V 憑借其免費的 IP 授權體系,肯定能在未來闖出一片天空,

圖片

蘋果自研 M1 芯片:巨頭就是要玩“芯”跳

歷史不會重演,但總押韻,此前在桌面及云計算領域一直是 CISC 陣營的 AMD 與英特爾的對臺戲,但是蘋果自研 M1 芯片的出現,使戰役的天平向 RISC 方向傾斜,

上世紀末軟體行業微軟 Windows 與封閉的蘋果 Macantoshi 之間的大戰,似乎又在半導體芯片行業再度上演,蘋果 M1 作為一款以 ARM 為核心的 RISC 處理器的代表,在片內集成了 CPU、GUP、協處理器與記憶體,一經發布便在各大性能排行榜上形成了碾壓之勢,不過 M1 是一款封閉式的芯片,其具體細節并不對外公開,想讓 M1 運行 Linux 都要很費一番周折,

讀到這里相信不少讀者也不禁要問為什么蘋果這樣的手機廠商非要入局自造芯片呢?之前蘋果的靈魂人物喬布斯其實是技術出身,而現任 CEO 庫克則是供應鏈方面的專家,目前成熟穩定的供應鏈才是蘋果蘋果安身立命的根本所在,

圖片

雖然整個世界都更加敬仰喬布斯式的天才,對于喬永遠走在創新前沿的精神無比期待,更熱切的盼望顛覆性的產品出現,但是對于蘋果這樣一家已經是龐然大物的企業來說,供應鏈的穩定才是基業常青的關鍵,體量越大的公司越要求穩,如果由于供應鏈出現問題,嚴重波及產品的量產和產能,后續多米諾骨牌效應所帶來的一系列損失,這是地讓企業元氣大傷,甚至難以承受,

那么如何能讓供應鏈穩定且可控呢?

蘋果給出的答案就是把供應鏈牢牢抓在自己手上,

庫克當家之后,蘋果繼續對供應鏈的穩定進行改進,這些努力包括:讓不同的產品盡可能使用兼容組件,要求供應商在蘋果組裝廠附近建廠生產,投資了最先進的企頁澩規劃系統等等,

在這樣一連串的組合拳之下,蘋果的庫存周期從數以月計縮短到了數天,也讓蘋果電腦的生產周期大幅度縮短,甚至擊敗了被稱為業界標桿的戴爾公司,這些改變不僅降低了產品的生產成本,可以留下更多利潤外,還能保證蘋果產品的市場供給,蘋果銷量龐大,但發布會后仍然鮮見缺貨,這一優勢大大增加產品競爭力,

了解了這些背景,就會覺得蘋果選擇自研電腦芯片是一件十分合乎邏輯的事情,因為自研芯片,可以使產品的升級迭代更加穩定,目前 iPhone 的新品發布日期多年來集中在 9 月底,根據筆者的統計近十年來這個發布日前后最多相差 5 天,其研發節奏和生產、發布節奏都可以完全掌控在自己手中,蘋果的清單里,沒有核心供應商,蘋果發新品不用看任何其它公司的臉色,而 M1 的推出有望將 Mac 系列打造成跟 iPhone 系列一樣可以穩定發布的優秀產品,

因此我們可以看到華為同樣也選擇了自研處理器的道路,其 Mate 系列新品發布一般都在秋季,前后最多浮動一個月左右,這樣的品控能力已經足夠優秀,做為對比我們看到之前由于數字旗艦系列的處理器非常依賴高通,小米的發布新品發布實際取決于高通芯片的發布及供貨次序,有時候為了首發某代處理器,還需要在備貨不充裕的情況下開發布會搶首發,經常被消費者批評是“耍猴”,

為了擺脫這一現狀,后來小米也發起了澎湃系列芯片的研發,除了華為、小米之外,OPPO 也在去年年初啟動了“馬里亞納計劃”,將于未來 3 年投入 500 億元進行芯片研發,

可以說未來消費終端廠商涉獵芯片勢必成為趨勢,而 RISC-V 憑借其在物聯網領域的良好表現,和開源可控的授權方式,會與這些深耕工業制造的廠商不謀而合,未來必將擦出火花,

圖片

圖片

RISC-V 在中國

與蘋果 M1 芯片的研發截然相反的是,以 RISC-V 為代表的 RISC 指令集走的是完全開源與開放的路徑,

RISC-V(“RISC-FIVE”)加州大學伯克利分校的圖靈獎得主 David A. Patterson 教授一手創建,與 Linux 的理念類似,RISC-V 的建設之初的目標就是可以免費地用于所有的設備中——RISC-V 允許任何人設計、制造和銷售 RISC-V 芯片和軟體,

  • 開源:RISC-V 使用 BSD 開源協議,企業完全自由免費使用,同時也容許企業添加自有指令集拓展而不必開源其基于 RISC-V 的設計拓展,因此 RISC-V 是芯片廠商快速提升站在巨人肩膀上的途徑,

  • 無縫對接 Linux:正如前文所說目前除了部分編譯器及作業系統內核引導代碼還在用匯編語言外,一般的程式員已經接觸不到指令集了,他們只需要面向 POSIX(統一作業系統編程介面)進行編程即可,

    因此與 Linux 的全面兼容將使得 RISC-V 迎來一波爭取生態級應用的機會,開發者可以非常方便將運行于 Linux 和 UNIX 系統的應用移植到 RISC-V 平臺,這將使 RISC-V 的芯片逐漸主流化,

  • 模塊化設計:RISC-V 以模塊化的方式組織在一起,用戶能夠靈活選擇不同的模塊組合,來實作自己定制化設備的需要,比如針對于小面積低功耗嵌入式場景,用戶可以選擇 RV32IC 組合的指令集,僅使用 Machine Mode(機器模式);而高性能應用作業系統場景則可以選擇譬如 RV32IMFDC 的指令集,選擇 Machine Mode(機器模式)與 User Mode(用戶模式)兩種模式,這使 RISC-V 的芯片的應用范圍可以非常廣泛,

最近一名 13 歲少年獨立在五天內完成 RISC-V 的芯片設計,成為火爆一時的新聞,這其實也從側面反應了 RISC-V 的開源策略所蘊含的力量,隨著 RISC-V 吸引 Linux 社區的目光,并進入 Linux 主流的支持串列,相信開放的 RISC-V 會是未來的方向,即將迎來輝煌,

面向未來,對于當下的國內 IT 企業尤其是行業領軍大廠來說,以芯片為首的硬體自研是道必須要邁過去的坎,更是想打造出極致產品的必經之路,除了 RISC-V 之外,國內的芯片廠商龍芯也買斷了 RISC 另一個重要的 MIPS 著作權同時推出 Loongarch 芯片指令集,并獨創了指令翻譯技術,兼容其它平臺應用,我們看到 Loongarch 也借鑒了很多 RISC 的設計思想,愿在業界的共同努力下 RISC-V 能夠協助中國芯一飛沖天,

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/261424.html

標籤:其他

上一篇:【解決】SLF4J: Class path contains multiple SLF4J bindings.

下一篇:SpringMVC 請求處理流程

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more