近日,騰訊宣布,其TARS微服務(wù)開(kāi)發(fā)框架已成功移植至ArmCPU架構(gòu)。
TARS是一個(gè)成熟的高性能微服務(wù)開(kāi)發(fā)框架,因其高性能及具備完善的微服務(wù)治理方案而廣為人知。現(xiàn)在,開(kāi)發(fā)人員可以無(wú)縫編程和生成基于Arm服務(wù)器的代碼。針對(duì)Arm的TARS微服務(wù)架構(gòu)可通過(guò)Akraino Blueprint了解。在本文中,我們將介紹4G和5G網(wǎng)絡(luò)中,移植到Arm架構(gòu)的TARS項(xiàng)目基本架構(gòu)和部署場(chǎng)景。
TARS和Arm架構(gòu)移植概覽
TARS支持多種編程語(yǔ)言,包括C++、Golang、Java、Node.js、PHP和Python,使Arm平臺(tái)的開(kāi)發(fā)人員和基于Arm系統(tǒng)的企業(yè)能夠快速構(gòu)建穩(wěn)定可靠的分布式應(yīng)用。TARS在騰訊經(jīng)過(guò)10多年的大規(guī)模使用和迭代,廣泛應(yīng)用于騰訊的在線社交、金融服務(wù)、邊緣計(jì)算、汽車、視頻、游戲、地圖、應(yīng)用市場(chǎng)和安全等數(shù)百項(xiàng)核心業(yè)務(wù)中。
2018年6月,騰訊將TARS捐贈(zèng)給Linux基金會(huì),目前微服務(wù)的規(guī)模已經(jīng)超過(guò)百萬(wàn)節(jié)點(diǎn),完美實(shí)踐了業(yè)界標(biāo)準(zhǔn)的DevOps理念和騰訊的海量服務(wù)之道。過(guò)去一年里,Arm與騰訊密切合作,成功完成了TARS到Arm架構(gòu)的移植,并完成了AR/VR以及車聯(lián)網(wǎng)項(xiàng)目。這意味著TARS不僅被應(yīng)用于傳統(tǒng)行業(yè),今后將被應(yīng)用到更多的創(chuàng)新項(xiàng)目中,企業(yè)和個(gè)人用戶也將不斷增加。
Arm軟件生態(tài)高級(jí)總監(jiān)Kevin Ryan表示:“Arm完全支持騰訊構(gòu)建的TARS微服務(wù)生態(tài)。Arm Neoverse平臺(tái)將在下一代云邊緣計(jì)算的基礎(chǔ)設(shè)施中實(shí)現(xiàn)大量微服務(wù)的橫向擴(kuò)展,我們期望為廣大開(kāi)發(fā)人員在TARS上部署新項(xiàng)目和應(yīng)用提供更多支持。”
從技術(shù)架構(gòu)的角度來(lái)看,基于TARS作為微服務(wù)平臺(tái)的Blueprint可以抽象為四層:
硬件層:它能夠在市場(chǎng)上大部分的硬件中運(yùn)行,支持基于多種架構(gòu)的服務(wù)器,包括ArmNeoverse平臺(tái)。
IaaS層:它可以部署在虛擬環(huán)境中,支持虛擬機(jī)、容器以及OpenStack、Kubernetes等其他IaaS主流平臺(tái)。
PaaS層:TARS作為Blueprint的微服務(wù)框架,可以提供高性能的RPC調(diào)用,支持在較大規(guī)模的橫向擴(kuò)展場(chǎng)景中高效部署微服務(wù),并提供便捷的服務(wù)監(jiān)控功能。
SaaS層:可完全根據(jù)用戶的需求制定并實(shí)現(xiàn)相對(duì)應(yīng)的解決方案。
從網(wǎng)絡(luò)架構(gòu)看,Blueprint可以部署在4G和5G網(wǎng)絡(luò)中,需要注意兩點(diǎn):
將數(shù)據(jù)發(fā)布到邊緣MEC平臺(tái)。數(shù)據(jù)發(fā)布策略可以根據(jù)不同的應(yīng)用進(jìn)行配置。
具備邊緣與其他邊緣以及遠(yuǎn)程數(shù)據(jù)中心通信的能力。在某些情況下,邊緣數(shù)據(jù)處理無(wú)法滿足應(yīng)用的要求。因此我們需要從不同的邊緣收集數(shù)據(jù),并為應(yīng)用得出“結(jié)論”。
騰訊TARS開(kāi)源項(xiàng)目負(fù)責(zé)人Mark Shan說(shuō):“Arm一直是我們開(kāi)發(fā)部署TARS微服務(wù)框架的戰(zhàn)略合作伙伴。我們已經(jīng)完成了將TARS移植到基于Arm服務(wù)器的LFEDGE Akraino Blueprint上的工作,期待未來(lái)繼續(xù)與Arm在TARS微服務(wù)生態(tài)中進(jìn)行更多的合作。”
結(jié)論
從易用性和高性能角度來(lái)講,TARS可以快速構(gòu)建系統(tǒng)并自動(dòng)生成代碼。同時(shí),TARS支持多種編程語(yǔ)言,包括C++,Golang,Java,Node.js,PHP和Python。TARS可以幫助開(kāi)發(fā)人員和企業(yè)以微服務(wù)方式快速構(gòu)建自己穩(wěn)定,可靠的分布式應(yīng)用程序,從而專注于業(yè)務(wù)邏輯以有效提高運(yùn)營(yíng)效率。
來(lái)源:騰訊開(kāi)源