成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

八年雙11,交易額增長 200 倍,交易峰值增長 400 多倍,阿里技術(shù)經(jīng)歷了什么?

開發(fā) 架構(gòu)
阿里巴巴中間件技術(shù)部的高級(jí)技術(shù)專家周洋(中亭)從能力大促、精細(xì)大促和效率大促三個(gè)方面探尋雙 11 高可用架構(gòu)演進(jìn)之路,并對(duì)未來雙 11 的挑戰(zhàn)進(jìn)行了展望。

[[200009]]

阿里巴巴中間件技術(shù)部的高級(jí)技術(shù)專家周洋(中亭)從能力大促、精細(xì)大促和效率大促三個(gè)方面探尋雙 11 高可用架構(gòu)演進(jìn)之路,并對(duì)未來雙 11 的挑戰(zhàn)進(jìn)行了展望。

[[200010]]

阿里雙 11 的技術(shù)挑戰(zhàn)

雙 11 技術(shù)挑戰(zhàn)的本質(zhì)是使用有限的成本去實(shí)現(xiàn)***化的用戶體驗(yàn)和集群整體吞吐能力,用最合理的代價(jià)解決零點(diǎn)峰值,支撐好業(yè)務(wù)的狂歡。

阿里做雙11已經(jīng)有八年之久了,八年來雙11的交易額增長 200 倍,交易峰值增長 400 多倍,系統(tǒng)復(fù)雜度和大促支撐難度以指數(shù)級(jí)攀升。

并且經(jīng)過多年的發(fā)展,雙 11 技術(shù)實(shí)現(xiàn)鏈條中的變量不斷增加,如峰值的增量和系統(tǒng)架構(gòu)的變化、交易峰值的組成、拆單比、每個(gè)業(yè)務(wù)入口的訪問量等,這些變量也給系統(tǒng)帶來了不確定性。

回顧這八年的雙 11 零點(diǎn)之戰(zhàn),它推動(dòng)了阿里的技術(shù)進(jìn)步、推動(dòng)了架構(gòu)優(yōu)化,加速了技術(shù)演進(jìn)和沉淀。

阿里的技術(shù)演進(jìn)是一個(gè)螺旋向上的過程,整體高可用演進(jìn)可以分為三個(gè)階段:能力大促、精細(xì)大促、效率大促,下面來一一分析。

阿里雙 11 高可用架構(gòu)演進(jìn)

能力大促——3.0 分布式架構(gòu)

能力大促***個(gè)要求是解決擴(kuò)展性的問題。上圖是淘寶 3.0 分布式架構(gòu),其意義在于讓淘寶從一個(gè)集中化應(yīng)用轉(zhuǎn)變?yōu)榉植蓟瘧?yīng)用。

在該架構(gòu)中對(duì)業(yè)務(wù)進(jìn)行了分層,同時(shí)在系統(tǒng)中***使用中間件、分布式調(diào)用、分布式消息、分布式數(shù)據(jù)庫;架構(gòu)底層沉淀了分布式存儲(chǔ)和緩存。

目前而言,大部分互聯(lián)網(wǎng)應(yīng)用都是基于這一架構(gòu)的,并且發(fā)展到現(xiàn)在,該架構(gòu)并無太大的變化。

隨著雙 11 業(yè)務(wù)量的增加,該架構(gòu)面臨著很多挑戰(zhàn):

  • 系統(tǒng)的可用性和故障恢復(fù)能力,以前集中化架構(gòu),出現(xiàn)問題回滾即可;現(xiàn)在由于涉及到眾多分布式系統(tǒng),快速排查和定位問題變得十分困難。
  • 分布式改造之后,單個(gè)系統(tǒng)存放在特定機(jī)房里,隨著業(yè)務(wù)發(fā)展,機(jī)器數(shù)目的增加,機(jī)房應(yīng)用層水平伸縮瓶頸、數(shù)據(jù)庫鏈接等都成了挑戰(zhàn)。
  • IDC 資源限制,單個(gè)城市已經(jīng)不足以支撐業(yè)務(wù)的增長規(guī)模。
  • 容災(zāi)問題,單地域 IDC 單點(diǎn)、網(wǎng)絡(luò)、臺(tái)風(fēng)、電力等導(dǎo)致高風(fēng)險(xiǎn)。
  • 國際化部署需求,可擴(kuò)展性再次成為瓶頸。

針對(duì)上述挑戰(zhàn),我們采用了異地多活方案,具體從四個(gè)方面出發(fā):首先建設(shè)異地單元機(jī)房,其次由于業(yè)務(wù)中買家維度數(shù)據(jù)遠(yuǎn)多于賣家維度數(shù)據(jù),且賣家維度數(shù)據(jù)變化并非十分頻繁,因此可以將流量按用戶維度進(jìn)行切分。

此外,由于走向異地***的挑戰(zhàn)是網(wǎng)絡(luò),為了減少異地調(diào)用的延時(shí),必須實(shí)現(xiàn)業(yè)務(wù)在本單元的封閉性,減少遠(yuǎn)程調(diào)用,***,由于容災(zāi)的需求,數(shù)據(jù)層實(shí)時(shí)同步,保持最終一致。

異地多活架構(gòu)

上圖是異地多活架構(gòu),可以看出,從 CDN 到阿里內(nèi)部的接入層都滿足單元化規(guī)則,根據(jù)當(dāng)前用戶的 ID,判斷流量的出口;在下游的層層中間件上以及數(shù)據(jù)寫入存儲(chǔ)時(shí)會(huì)對(duì)用戶請(qǐng)求進(jìn)行判斷,如出現(xiàn)異常,則報(bào)錯(cuò),防止錯(cuò)誤的數(shù)據(jù)寫入。

賣家的數(shù)據(jù)部署在中心,單元的數(shù)據(jù)會(huì)同步到中心,中心賣家的數(shù)據(jù)也會(huì)同步到各個(gè)單元,但在各個(gè)單元內(nèi)只能對(duì)賣家的數(shù)據(jù)進(jìn)行讀操作。

那么異地多活的到底有什么意義呢?首先異地多活消除了 IDC 資源單點(diǎn)和容量瓶頸,其次解決了異地容災(zāi)問題,業(yè)務(wù)可以秒級(jí)快速切換。

此外,異地多活簡化了容量規(guī)劃,提升了伸縮性和可維護(hù)性。***,通過異地多活解決了可擴(kuò)展性問題,為后續(xù)架構(gòu)演進(jìn)打下堅(jiān)實(shí)基礎(chǔ)。

能力大促——容量規(guī)劃

對(duì)于上文提到的 3.0 架構(gòu),單機(jī)器的極限能力乘以機(jī)器數(shù),在下游依賴都充足的情況下,近似等于整個(gè)系統(tǒng)的能力。因此,當(dāng)前做容量規(guī)劃,首先需要評(píng)估應(yīng)用線上單機(jī)極限能力;再根據(jù)公式和經(jīng)驗(yàn)推演容量規(guī)劃。

目前,在阿里內(nèi)部進(jìn)行容量規(guī)劃時(shí),面臨以下挑戰(zhàn):

  • 容量規(guī)劃的目的是從用戶登錄到完成購買的整個(gè)鏈條中,整體資源如何合理分配?
  • 500+ 的核心系統(tǒng)、整個(gè)技術(shù)鏈條長、業(yè)務(wù)入口多、邏輯復(fù)雜。
  • 鏈路瓶頸點(diǎn)較多,每年大促峰值都會(huì)出現(xiàn)一些問題,無法提前發(fā)現(xiàn)。
  • 堆積木的容量規(guī)劃方法,前面失之毫厘后面謬以千里。
  • 在能力評(píng)估時(shí)應(yīng)該考慮的是一個(gè)處理鏈路而不僅僅是單一的應(yīng)用。
  • 缺乏驗(yàn)證核心頁面和交易創(chuàng)建鏈條實(shí)際承載能力的手段。

壓測方案

為了應(yīng)對(duì)上述挑戰(zhàn),我們需要從全鏈條的角度出發(fā)進(jìn)行壓測和容量規(guī)劃。全鏈路壓測是在線上集群模擬真實(shí)業(yè)務(wù)流量的讀寫壓測,完成從網(wǎng)絡(luò)、IDC、集群、應(yīng)用、緩存、DB 以及業(yè)務(wù)系統(tǒng)上下游依賴鏈條的容量、性能壓力測試。

整體壓測通過自定義壓測工具,大流量來自機(jī)房外部,進(jìn)而構(gòu)造線上測試數(shù)據(jù),且業(yè)務(wù)模型接近真實(shí);全鏈路壓測隔離了測試數(shù)據(jù)和正常數(shù)據(jù),兩者之間互不影響,并且全鏈路壓測時(shí)是對(duì)用戶體驗(yàn)無感知、無影響的。

全鏈路壓測通過復(fù)用中間件的能力,具有超大規(guī)模的集群壓測能力,每秒千萬 QPS。同時(shí)將壓測引擎部署到全球各地的 CDN 上,實(shí)現(xiàn)了分布式部署壓測引擎,按照約定的時(shí)間發(fā)送壓測數(shù)據(jù)。

其次,壓測數(shù)據(jù)是基于線上真實(shí)數(shù)據(jù)進(jìn)行了脫敏和偏移,數(shù)據(jù)模型與雙 11 極其接近。此外,實(shí)現(xiàn)了線程級(jí)隔離,無臟數(shù)據(jù),壓力測試直接作用于線上集群,暴露問題更加精準(zhǔn)。

通過全鏈路壓測,打破了不可預(yù)知技術(shù)風(fēng)險(xiǎn)的限制,加速技術(shù)進(jìn)化;為新技術(shù)的嘗試和突破做好保底和驗(yàn)收的工作;做到了主動(dòng)發(fā)現(xiàn)問題而不是被動(dòng)等待、應(yīng)急處理;通過新的線上演練,為穩(wěn)定性的確定性打下堅(jiān)實(shí)基礎(chǔ)。

能力大促——限流降級(jí)

限流降級(jí)是能力大促的必要要求。在雙 11 開始前,盡管我們準(zhǔn)備了大量的機(jī)器和能力,然而在雙 11 零點(diǎn)到來時(shí),真實(shí)業(yè)務(wù)量還是有可能大于我們的預(yù)期。

此時(shí),為了確保我們的機(jī)器不超負(fù)荷運(yùn)作,我們采用了限流措施,超過機(jī)器極限的業(yè)務(wù)全部拒絕,避免系統(tǒng)因業(yè)務(wù)流量的突然過大而崩潰。

目前,阿里能夠做到從線程數(shù)、請(qǐng)求值、負(fù)載多個(gè)角度進(jìn)行限流,從而保障系統(tǒng)的穩(wěn)定。

分布式應(yīng)用是默認(rèn)下游應(yīng)用是不可靠的,對(duì)于一些弱依賴的請(qǐng)求,應(yīng)該進(jìn)行提前自動(dòng)降級(jí)。至于哪些應(yīng)用需要降級(jí)?需要降級(jí)什么?下游的依賴又是什么?這些問題都是通過依賴治理來解決的。

精細(xì)大促——依賴治理

在阿里內(nèi)部,依賴治理是通過中間件分布式鏈路跟蹤技術(shù),完成系統(tǒng)架構(gòu)梳理;同時(shí)對(duì)海量調(diào)用鏈進(jìn)行統(tǒng)計(jì),得到鏈路各個(gè)依賴系統(tǒng)的穩(wěn)定性指標(biāo);此外,結(jié)合業(yè)務(wù)用例識(shí)別強(qiáng)弱依賴,弱依賴可自動(dòng)降級(jí)提供有損服務(wù)。

精細(xì)大促——開關(guān)預(yù)案

精細(xì)化雙 11 控制的首要機(jī)制是開關(guān)預(yù)案。開關(guān)是讓系統(tǒng)切換不同功能表現(xiàn)的標(biāo)準(zhǔn)技術(shù),可以無需變更代碼只推送配置控制系統(tǒng)行為,讓系統(tǒng)的后門標(biāo)準(zhǔn)化。

開關(guān)中心配置變更可以實(shí)時(shí)下發(fā)到集群,且操作行為對(duì)業(yè)務(wù)而言是原子性的。開關(guān)預(yù)案整合了一批業(yè)務(wù)開關(guān)、限流等操作,將多系統(tǒng)的后臺(tái)操作組裝批量執(zhí)行;實(shí)現(xiàn)了預(yù)案推送是有順序性的,保證業(yè)務(wù)切換的一致性和完整性。

精細(xì)大促——故障演練

統(tǒng)計(jì)學(xué)的數(shù)據(jù)顯示:當(dāng)服務(wù)規(guī)模大于一定數(shù)量時(shí),硬件故障無法避免。因此,系統(tǒng)要面向失敗做設(shè)計(jì),測試系統(tǒng)健壯性的***方法,就是不要用正常方式使服務(wù)停機(jī)。對(duì)應(yīng)線上系統(tǒng),要實(shí)現(xiàn)容災(zāi),首先需要實(shí)現(xiàn)背后工具體系的容災(zāi)。

由于線上故障是一種常態(tài),系統(tǒng)負(fù)責(zé)人要具備快速發(fā)現(xiàn)和處理故障的能力,需要實(shí)戰(zhàn)機(jī)會(huì)來成長。另外,跨團(tuán)隊(duì)的流程也是需要加以重視,由于業(yè)務(wù)分布式的特性,出現(xiàn)故障時(shí)需要業(yè)務(wù)系統(tǒng)的上下游共同協(xié)作,這就對(duì)流程提出來嚴(yán)格的要求。

故障演練的實(shí)現(xiàn)方案

前期,我們將阿里電商常見的故障進(jìn)行畫像和分析,得到初步結(jié)論,按照 IaaS、PaaS、SaaS 層進(jìn)行初步劃分,但這個(gè)模型無法完全通用,并非包含所有的故障。

因此,后期我們對(duì)這一模型又進(jìn)一步抽象,將故障分為進(jìn)程內(nèi)的故障,如代碼死循環(huán)等;進(jìn)程外的故障,如磁盤讀寫速度變慢、網(wǎng)絡(luò)波動(dòng)等;分布式調(diào)用依賴的底層設(shè)施故障,如數(shù)據(jù)庫、緩存或者其他設(shè)施出現(xiàn)故障。

目前,阿里故障演練實(shí)現(xiàn)了業(yè)務(wù)零改造,可插拔式接入;多維度業(yè)務(wù)識(shí)別和故障注入,定量控制演練影響;沉淀通用故障模型,平臺(tái)化輸出演練能力。

從去年雙 11 開始,阿里開始使用線上統(tǒng)一演練環(huán)境,通過邏輯隔離,動(dòng)態(tài)擴(kuò)展邏輯環(huán)境,按需租賃,簡化測試步驟,使得演練結(jié)果更加真實(shí)。

同時(shí)多套環(huán)境互不影響,嚴(yán)格保證環(huán)境的穩(wěn)定和安全;支持用戶、業(yè)務(wù)、數(shù)據(jù)、流量特征的分流和隔離,提高了效率,賦能業(yè)務(wù)創(chuàng)新。

效率大促——流量調(diào)度

在線上集群中,如果個(gè)別機(jī)器發(fā)生故障,為了保證業(yè)務(wù)的整體穩(wěn)定性,需要對(duì)故障點(diǎn)進(jìn)行流量調(diào)度。

流量調(diào)度通過實(shí)時(shí)探測與監(jiān)控分布式環(huán)境中每一臺(tái)機(jī)器的狀況,如果機(jī)器發(fā)生故障,則使用分布式服務(wù)具有的自我隔離和自我修復(fù)能力,使用流量調(diào)度和負(fù)載均衡機(jī)制,通過關(guān)注局部用戶請(qǐng)求和用戶體驗(yàn),提升整體可用性。

阿里雙 11 未來挑戰(zhàn)

盡管我們已經(jīng)采用了很多措施來保障雙 11 的穩(wěn)定性,但未來,依舊面臨著不少挑戰(zhàn):

實(shí)現(xiàn)更加精細(xì)化、數(shù)據(jù)化、智能化的雙 11。

從容量確定性到資源確定性,從每個(gè)實(shí)例部署在哪里***、精確到每個(gè)內(nèi)核如何分配***。

更加精準(zhǔn)的分析、預(yù)測流量模型和業(yè)務(wù)模型,實(shí)現(xiàn)預(yù)測、引導(dǎo)相結(jié)合,逼近真實(shí)、增加確定性。

實(shí)現(xiàn)技術(shù)變量的采集、分析、預(yù)測,數(shù)據(jù)分析驅(qū)動(dòng),自主決策處理,關(guān)鍵技術(shù)指標(biāo)的預(yù)估錯(cuò)誤系統(tǒng)做到自適應(yīng),彈性處理。

在體驗(yàn)、成本和***吞吐能力方面找到新的平衡點(diǎn)。

 

責(zé)任編輯:武曉燕 來源: 阿里中間件團(tuán)隊(duì)博客
相關(guān)推薦

2019-07-17 08:58:17

架構(gòu)業(yè)務(wù)云化

2013-11-11 09:44:45

阿里雙11交易

2018-07-26 21:22:00

云測試

2017-02-20 20:04:05

系統(tǒng)超輕量日志實(shí)現(xiàn)

2018-04-23 11:34:43

阿里巴巴監(jiān)控系統(tǒng)人工智能

2012-11-19 14:40:52

Square

2011-11-08 16:12:28

淘寶服務(wù)

2017-11-28 10:23:24

阿里雙11

2012-03-05 20:06:42

iPad

2015-11-13 10:53:58

京東雙十一

2019-11-14 18:38:31

阿里云雙11天貓

2011-06-24 15:36:29

PayPal移動(dòng)支付Square

2017-04-19 09:40:55

雙11阿里巴巴

2015-11-11 21:46:45

阿里巴巴雙11

2018-11-12 11:47:49

2021-10-15 14:06:47

比特幣加密貨幣貨幣

2015-11-12 17:37:35

魅族

2017-05-16 15:39:28

互聯(lián)網(wǎng)

2019-11-12 09:28:10

區(qū)塊鏈技術(shù)應(yīng)用程序

2020-11-09 09:58:49

架構(gòu)雙十一開發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: cao在线| 一区二区三区在线观看免费视频 | 免费精品在线视频 | 国户精品久久久久久久久久久不卡 | 91国内视频在线 | 欧美一级久久 | 一区二区免费看 | 夜夜草| 99在线播放 | 中文字幕视频免费 | 国产精品不卡 | 亚洲欧美激情网 | 男人天堂手机在线视频 | 综合久久综合久久 | 99久久精品国产一区二区三区 | 免费在线看黄 | 久久精品视频12 | 一级毛片,一级毛片 | 欧美成人a∨高清免费观看 欧美日韩中 | 99热电影| 日韩毛片播放 | 欧美影院| 精品国产一区二区国模嫣然 | 久久久久亚洲精品 | 久久久久国产 | 在线观看亚 | 成人免费大片黄在线播放 | 91久久爽久久爽爽久久片 | 91高清视频在线观看 | 国产久| 国产精品免费福利 | 一区二区在线免费观看 | 欧美精品久久久久久久久久 | 精品在线一区 | 亚洲一区久久 | 91传媒在线观看 | 亚洲免费婷婷 | 国产区在线观看 | 国产精品视频网 | 一区视频 | 黄色免费观看 |