宏景智駕完成數(shù)億元C輪融資植物生長(zhǎng)好幫手:廣明源金線蓮組培燈照亮生長(zhǎng)每一步ROG純白系列DIY好物:簡(jiǎn)約不失高雅,買它準(zhǔn)沒錯(cuò)!穩(wěn)扎穩(wěn)打,中影光峰4K 14米 VLED LED電影屏通過DCI認(rèn)證并投入市場(chǎng)安吉爾空間大師亮相IFA 斬獲年度創(chuàng)新產(chǎn)品成果大獎(jiǎng)電動(dòng)自行車強(qiáng)制性“國(guó)標(biāo)”再修訂,綠源電動(dòng)車以創(chuàng)新技術(shù)引領(lǐng)產(chǎn)業(yè)高質(zhì)量發(fā)展輕松籌:十年深耕大健康領(lǐng)域,打造全方位健康保障生態(tài)面對(duì)承壓的小家電市場(chǎng),小熊、蘇泊爾上半年為何一降一增?研發(fā)投入高增、占營(yíng)收比超5%,科沃斯、石頭科技升高技術(shù)壁壘激光顯示全面“向新”發(fā)展,未來激光電視主機(jī)僅有iPad大小2024年冷年空調(diào)市場(chǎng)總結(jié):規(guī)模下探,結(jié)構(gòu)降級(jí),空調(diào)行業(yè)邁入新周OpenAI o1全方位SOTA登頂lmsys推薦榜!數(shù)學(xué)能力碾壓Claude和谷歌模型,o1-mini并列第一iPhone16系列新品正式發(fā)售 新品爆發(fā)就在抖音電商廣告燒錢過億,70%用戶靠投流,大模型算不過成本賬?PS1經(jīng)典配色!索尼發(fā)布30周年紀(jì)念版PS5、PS5 Pro:限量賣泰順:聚智聚力數(shù)字創(chuàng)客激發(fā)鄉(xiāng)村振興新動(dòng)能電商12年 ,ALL IN 小紅書,開店3月賣出1100萬Mate 70最受期待!華為三款重磅機(jī)型蓄勢(shì)待發(fā)云天勵(lì)飛“算力積木”架構(gòu):引領(lǐng)邊緣AI芯片新變革徹底告別3999元!小米15入網(wǎng) 支持90W快充
  • 首頁 > 數(shù)據(jù)存儲(chǔ)頻道 > 數(shù)據(jù)庫(kù)頻道 > 軟件架構(gòu)

    掘力計(jì)劃22期-字節(jié)跳動(dòng)架構(gòu)中臺(tái)提效之路

    2023年08月25日 08:54:47   來源:中文科技資訊

      2023年8月19日,掘金掘力計(jì)劃系列活動(dòng)第22場(chǎng)——《聊聊前端工程化實(shí)踐和未來》在杭州舉行,在本場(chǎng)前端工程化專題的分享活動(dòng)中,來自字節(jié)跳動(dòng)的資深前端張兆鑫做了題為《架構(gòu)中后臺(tái)提效之路》的分享。

    圖片1.jpg

      1. 為什么需要架構(gòu)中后臺(tái)?

      有一定規(guī)模的公司,往往會(huì)進(jìn)行開發(fā)大量的中后臺(tái),而每一次開發(fā)一個(gè)中后臺(tái)都有一些通用能力的重復(fù)建設(shè),需要處理以下問題:

      1.申請(qǐng)所有機(jī)房的基礎(chǔ)設(shè)施

      2.處理 BFF

      3.處理 SSO

      4.權(quán)限管理

      5.增刪改查

      還有一些特殊場(chǎng)景下的重復(fù)成本,比如在字節(jié)跳動(dòng)非常重視數(shù)據(jù)合規(guī),經(jīng)常會(huì)需要處理關(guān)于多機(jī)房相關(guān)的問題,這些中后臺(tái)的重復(fù)建設(shè)帶來了以下幾個(gè)問題:

      1.大量的中后臺(tái)能力,每一塊小業(yè)務(wù)可能都需要一個(gè)對(duì)應(yīng)的中后臺(tái)。

      2.重復(fù)的通用能力,比如權(quán)限、SSO、BFF還有我上面提到的機(jī)房問題。

      3.極高的溝通成本,當(dāng)中后臺(tái)越來越多,溝通成本隨之上漲。

      4.接口合理性,這會(huì)涉及到一些接口規(guī)范以及和后端開發(fā)同學(xué)的對(duì)接問題。

      在此背景下,就有盡可能的將這些中后臺(tái)系統(tǒng)的復(fù)雜度進(jìn)行收斂,畢竟復(fù)雜度不會(huì)憑空消失,在這個(gè)基礎(chǔ)上開始嘗試架構(gòu)中后臺(tái)提效之路。

      2. 架構(gòu)中后臺(tái)發(fā)展之路

      整個(gè)架構(gòu)中后臺(tái)的發(fā)展其實(shí)可以分為三個(gè)階段。

      在初期,其目標(biāo)是:提升效率 && 跑通鏈路,為了盡快打通整個(gè)鏈路,先做的是一個(gè)簡(jiǎn)單的命令行工具,通過命令行工具可以將項(xiàng)目直接發(fā)布,通過泛域名解析到四級(jí)域名來訪問,發(fā)布上去后,用戶就可以結(jié)合身份、權(quán)限等信息來訪問。Vercel 早期也有類似的模式。

    圖片2.jpg

    圖片3.jpg

      從上圖的可以看到前期的整個(gè)系統(tǒng)是分為兩塊:服務(wù)和框架。

      在資源有限的情況下,我們需要去謀求一個(gè)平衡。完成滿足基本訴求的框架,我們一直在靈活和開箱即用中尋找平衡。

      我們首先挑選了一些領(lǐng)域,首先插件化是最重要的,在不修改核心的情況下修改運(yùn)行時(shí)和編譯時(shí)。我們定制化了 Tapable ,作為插件的底層實(shí)現(xiàn),所有的業(yè)務(wù)定制功能都可以通過插件來完成。

      接下來就是一套通用的開箱即用的中后臺(tái)組件,希望盡可能開箱即用,通過大組件降低使用和理解成本。但是不同的業(yè)務(wù)場(chǎng)景下對(duì)于組件細(xì)節(jié)的要求不一樣,所以這里借用了Docusaurus 的 Swizzling component 這個(gè)概念對(duì)所有組件進(jìn)行模塊拆分,將中后臺(tái)拆分成 10 幾個(gè)嵌套區(qū)域,所有模塊都可以通過插件系統(tǒng)動(dòng)態(tài)引入,可以利用這個(gè)插件系統(tǒng)對(duì)組件的細(xì)節(jié)進(jìn)行定制。內(nèi)部狀態(tài)可以通過 Hook 拿到,這樣就做到了漸進(jìn)式自定義。

      同時(shí),我們也遇到了一些團(tuán)隊(duì)的項(xiàng)目有 100 個(gè)以上的頁面,但并不是所有頁面的修改頻率、維護(hù)者都一樣,所以引入了路由按需編譯功能,來對(duì)開發(fā)進(jìn)行提效。

      架構(gòu)中后臺(tái)的第二個(gè)階段就是:降低框架接入門檻,做最佳實(shí)踐:

    圖片4.jpg

    圖片5.jpg

    圖片6.jpg

      從上圖的可以看到,在階段二通過降低環(huán)境配置復(fù)雜度、一系列配置可視化,降低框架的接入門檻。

      通過一鍵環(huán)境監(jiān)測(cè)安裝腳本可以快速的將整個(gè)開發(fā)過程中需要的環(huán)境一鍵配齊,有些公司是通過 Docker 來做這件事,解決的問題是一致的。

      屏蔽腳手架細(xì)節(jié),通過配置、插件的可視化操作,降低框架的使用門檻。

      接下來通過引入可視化菜單編輯器、可視化頁面與常用模版,能夠很快的幫助開發(fā)框架搭建以及基礎(chǔ)頁面的生成。

      在這個(gè)階段遇到了兩個(gè)問題:一個(gè)是服務(wù)穩(wěn)定性問題,另一個(gè)是大量的 Oncall。

      服務(wù)穩(wěn)定性的挑戰(zhàn),這是一個(gè)需要不斷完善以及優(yōu)化的部分,目前已經(jīng)做了以下措施:

      1.靜態(tài)資源容災(zāi)。

      2.數(shù)據(jù)多級(jí)緩存容災(zāi)。

      3.機(jī)房容災(zāi)。

      架構(gòu)中后臺(tái)的第三個(gè)階段就是:Procode 與低代碼相結(jié)合

      在代碼生成頁面,架構(gòu)中后臺(tái)也選擇了 Procode 和 低代碼,因?yàn)樵诓煌瑯I(yè)務(wù)復(fù)雜度下,兩種方式的復(fù)雜度也有不同:

    圖片7.jpg

      從上圖可以看到,低代碼的復(fù)雜度是越來越高的,而 Procode 的復(fù)雜度是隨著業(yè)務(wù)變高的,對(duì)于低代碼來說,其實(shí)更適合做一些垂直領(lǐng)域的應(yīng)用,在垂直領(lǐng)域低代碼的作用是最大的。

    圖片8.jpg

      調(diào)研了一些業(yè)界產(chǎn)品:Landing Page 的解決方案、宜搭跟釘釘結(jié)合就能很好的解決工作流、供應(yīng)商管理等問題。Builder.io 可以把渲染器引入到本地,把區(qū)塊做成低代碼,是一個(gè)非常優(yōu)秀的開發(fā)結(jié)合方案。Retool 在內(nèi)部系統(tǒng)領(lǐng)域做的很好,在內(nèi)部實(shí)現(xiàn)了搭建與本地代碼結(jié)合的方案,參考下圖。

    圖片9.jpg

    圖片10.jpg

      3. 架構(gòu)中臺(tái)未來思考

      架構(gòu)中臺(tái)的未來發(fā)展方向目前主要是 GPT探索、深耕場(chǎng)景搭建和新工具整合:

    圖片11.jpg

      GPT探索

      通過與GPT(通用預(yù)訓(xùn)練語言模型)的問答交互,可以高效地理解文檔中的內(nèi)容和總結(jié)常見問題。

      這種交互方式將問題形式化,GPT則根據(jù)自身廣泛的語言知識(shí)生成對(duì)應(yīng)答案,實(shí)現(xiàn)對(duì)文檔關(guān)鍵信息的提取,相較于人工理解和總結(jié)文檔,這種人機(jī)協(xié)同的方式大大提高了工作效率。

      同時(shí),預(yù)先設(shè)定好的問答模板,可以使問答更加標(biāo)準(zhǔn)化,快速鎖定問題關(guān)鍵點(diǎn),避免不必要的重復(fù)勞動(dòng)。結(jié)合預(yù)置的文本生成模板,GPT生成的答案可直接用于各種文檔、報(bào)告等的撰寫,無需從零開始創(chuàng)作,大幅減少重復(fù)性工作,使文檔寫作快速高效。

      深耕場(chǎng)景搭建

      針對(duì)常見的CRUD、表單、詳情頁等場(chǎng)景,設(shè)置對(duì)應(yīng)快捷方式,如增刪改查指令,可以快速生成代碼框架。同時(shí),針對(duì)表單,可預(yù)設(shè)組件的快捷插入方式,僅需簡(jiǎn)單配置即可生成。詳情頁場(chǎng)景可以預(yù)置通用的布局和樣式代碼,開發(fā)者只需填充數(shù)據(jù)。另外,針對(duì)分布式表單,可以抽象出公共邏輯代碼,然后根據(jù)不同需求組合生成。還需要提供多種數(shù)據(jù)鏈接能力,直接鏈接各類數(shù)據(jù)庫(kù)、調(diào)用開放API等,豐富數(shù)據(jù)源,減少數(shù)據(jù)處理工作,提升開發(fā)效率。

      新工具整合

      隨著Rust語言生態(tài)越來越成熟,其工具鏈也在不斷發(fā)展,比如RSpack等。未來 架構(gòu)中臺(tái) 會(huì)考慮與Rust的工具鏈實(shí)現(xiàn)深度集成,從底層級(jí)別進(jìn)行打通。Rust的性能優(yōu)勢(shì)有望通過這種集成得到充分利用。比如實(shí)現(xiàn)Rust編寫的底層組件在 架構(gòu)中臺(tái)中直接使用,無縫對(duì)接。這可以提升 架構(gòu)中臺(tái)的運(yùn)行效率與穩(wěn)定性。同時(shí),以Arco Studio作為 架構(gòu)中臺(tái)的資源管理中心,實(shí)現(xiàn)組件、模板、數(shù)據(jù)等資源的統(tǒng)一管理,使開發(fā)者可以快速搜索、組合資源,大幅提升效率。

      關(guān)于掘力計(jì)劃

      掘力計(jì)劃由稀土掘金技術(shù)社區(qū)發(fā)起,致力于打造一個(gè)高品質(zhì)的技術(shù)分享和交流的系列品牌。聚集國(guó)內(nèi)外頂尖的技術(shù)專家、開發(fā)者和實(shí)踐者,通過線下沙龍、閉門會(huì)、公開課等多種形式分享最前沿的技術(shù)動(dòng)態(tài)。(作者:趙煥)

      

    [No. X048]
    分享到微信

    即時(shí)

    TCL實(shí)業(yè)榮獲IFA2024多項(xiàng)大獎(jiǎng),展示全球科技創(chuàng)新力量

    近日,德國(guó)柏林國(guó)際電子消費(fèi)品展覽會(huì)(IFA2024)隆重舉辦。憑借在核心技術(shù)、產(chǎn)品設(shè)計(jì)及應(yīng)用方面的創(chuàng)新變革,全球領(lǐng)先的智能終端企業(yè)TCL實(shí)業(yè)成功斬獲兩項(xiàng)“IFA全球產(chǎn)品設(shè)計(jì)創(chuàng)新大獎(jiǎng)”金獎(jiǎng),有力證明了其在全球市場(chǎng)的強(qiáng)大影響力。

    新聞

    敢闖技術(shù)無人區(qū) TCL實(shí)業(yè)斬獲多項(xiàng)AWE 2024艾普蘭獎(jiǎng)

    近日,中國(guó)家電及消費(fèi)電子博覽會(huì)(AWE 2024)隆重開幕。全球領(lǐng)先的智能終端企業(yè)TCL實(shí)業(yè)攜多款創(chuàng)新技術(shù)和新品亮相,以敢為精神勇闖技術(shù)無人區(qū),斬獲四項(xiàng)AWE 2024艾普蘭大獎(jiǎng)。

    企業(yè)IT

    重慶創(chuàng)新公積金應(yīng)用,“區(qū)塊鏈+政務(wù)服務(wù)”顯成效

    “以前都要去窗口辦,一套流程下來都要半個(gè)月了,現(xiàn)在方便多了!”打開“重慶公積金”微信小程序,按照提示流程提交相關(guān)材料,僅幾秒鐘,重慶市民曾某的賬戶就打進(jìn)了21600元。

    研究

    2024全球開發(fā)者先鋒大會(huì)即將開幕

    由世界人工智能大會(huì)組委會(huì)、上海市經(jīng)信委、徐匯區(qū)政府、臨港新片區(qū)管委會(huì)共同指導(dǎo),由上海市人工智能行業(yè)協(xié)會(huì)聯(lián)合上海人工智能實(shí)驗(yàn)室、上海臨港經(jīng)濟(jì)發(fā)展(集團(tuán))有限公司、開放原子開源基金會(huì)主辦的“2024全球開發(fā)者先鋒大會(huì)”,將于2024年3月23日至24日舉辦。