




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
ICS
團(tuán)體標(biāo)準(zhǔn)
T/CESAXXXX—2020
分布式平臺技術(shù)規(guī)范
Technicalspecificationofdistributedplatform
征求意見稿
在提交反饋意見時,請將您知道的相關(guān)專利連同支持性文件一并附上。
已授權(quán)的專利證明材料為專利證書復(fù)印件或扉頁,已公開但尚未授權(quán)的專利申
請證明材料為專利公開通知書復(fù)印件或扉頁,未公開的專利申請的證明材料為專利
申請?zhí)柡蜕暾埲掌凇?/p>
2020-XX-XX發(fā)布2020-XX-XX實(shí)施
中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會發(fā)布
T/CESAXXXX-2020
前??言
本文件按照GB/T1.1-2020《標(biāo)準(zhǔn)化工作導(dǎo)則第1部分:標(biāo)準(zhǔn)化文件的結(jié)構(gòu)和起草規(guī)則》的規(guī)定起
草。
本文件由神州數(shù)碼融信軟件有限公司提出。
本文件由中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會歸口。
本文件起草單位:神州數(shù)碼融信軟件有限公司、金稅信息技術(shù)服務(wù)股份有限公司、上海計(jì)算機(jī)軟件
技術(shù)開發(fā)中心、上海軟中信息技術(shù)有限公司。
本文件主要起草人:于宏志、沈偉、薛春雨、潘紫娟。
III
T/CESAXXXX-2020
分布式平臺技術(shù)規(guī)范
1范圍
本文件規(guī)定了面向聯(lián)機(jī)交易系統(tǒng)的分布式平臺應(yīng)覆蓋的范圍及應(yīng)具備的基礎(chǔ)功能。
本文件適用于聯(lián)機(jī)交易系統(tǒng)所使用的分布式平臺的建設(shè)。
2規(guī)范性引用文件
本文件沒有規(guī)范性引用文件。
3術(shù)語和定義
下列術(shù)語和定義適用于本文件。
3.1
數(shù)據(jù)data
信息的可再解釋的形式化表示,以適用于通信、解釋或處理
注:可以通過人工或自動手段處理數(shù)據(jù)。
[GB/T5271.1-2000,01.01.02]
3.2
分布式distributed
<計(jì)算機(jī)>物理上由多個不同的機(jī)器參與執(zhí)行,但在邏輯上完成的是一個任務(wù)
注:對使用者來說,就像一臺計(jì)算機(jī)在執(zhí)行一樣。
3.3
微服務(wù)microservice
<計(jì)算機(jī)>職責(zé)單一的、輕量化的服務(wù)單元
注:一個微服務(wù)有自己獨(dú)立的應(yīng)用和數(shù)據(jù)庫。
3.4
事務(wù)transaction
<計(jì)算機(jī)>訪問并可能更新事務(wù)資源中各種數(shù)據(jù)項(xiàng)的一個程序執(zhí)行單元(unit)
注:一個事務(wù)如果執(zhí)行成功就全部提交,如果有一個失敗就全部回滾。
4概述
分布式平臺需要為系統(tǒng)提供全方位的分布式能力,當(dāng)性能遇到瓶頸時可通過橫向擴(kuò)展的機(jī)制予
1
T/CESAXXXX-2020
以解決,并且需對分布式帶來的事務(wù)問題提供完備的解決方案。不同領(lǐng)域的聯(lián)機(jī)交易系統(tǒng)對分布式
的需求存在一定差異,在進(jìn)行系統(tǒng)建設(shè)時可按需選擇,分布式聯(lián)機(jī)交易系統(tǒng)的參考架構(gòu)見圖1,其
中分布式平臺應(yīng)包括:
a)微服務(wù)平臺:提供應(yīng)用層的分布式能力,將一個復(fù)雜系統(tǒng)拆分為多個微服務(wù),每個微服務(wù)可
同時運(yùn)行多個實(shí)例,不僅提升了系統(tǒng)的擴(kuò)展性、可用性,還可以快速靈活的應(yīng)對業(yè)務(wù)變化;
b)分布式數(shù)據(jù):將大數(shù)據(jù)量表中的數(shù)據(jù)進(jìn)行水平拆分,用多個物理庫來承載,不僅降低了單表
的數(shù)據(jù)量,還增加了可用的物理資源;
c)分布式緩存:對于大量的數(shù)據(jù)查詢請求,采用分布式緩存進(jìn)行存儲,降低對數(shù)據(jù)庫的交互次
數(shù),縮短服務(wù)的響應(yīng)時間;
d)全局序列:提供跨多個微服務(wù)實(shí)例的序列服務(wù),以防止不同實(shí)例中的序列重復(fù);
e)分布式調(diào)度:提供統(tǒng)一的分布式調(diào)度機(jī)制,協(xié)調(diào)多個微服務(wù)節(jié)點(diǎn)及數(shù)據(jù)庫節(jié)點(diǎn)共同參與運(yùn)行,
充分利用物理資源,將批量處理的時間控制在有效范圍內(nèi);
f)分布式事務(wù):由于微服務(wù)和分布式數(shù)據(jù),就會帶來分布式事務(wù)的問題,所以需提供跨數(shù)據(jù)庫、
跨微服務(wù)的事務(wù)一致性的保證機(jī)制。
圖1分布式聯(lián)機(jī)交易系統(tǒng)架構(gòu)
5微服務(wù)平臺
5.1概述
微服務(wù)平臺的主要目的是為聯(lián)機(jī)交易系統(tǒng)提供應(yīng)用分布式的運(yùn)行機(jī)制,以及配套的管理體系,
主要包括:接入網(wǎng)關(guān)、微服務(wù)引擎和運(yùn)維監(jiān)控三大部分。
5.2接入網(wǎng)關(guān)
接入網(wǎng)關(guān)為外部系統(tǒng)訪問提供統(tǒng)一的接入及控制,應(yīng)包括:
a)服務(wù)鑒權(quán):對服務(wù)的訪問進(jìn)行控制,只有在權(quán)限范圍內(nèi)的才可以訪問,否則將被拒絕;
b)流量控制:對請求的總量進(jìn)行控制,如果超過限制,后續(xù)的請求將會被拒絕或者等待,還可
以按具體的業(yè)務(wù)維度進(jìn)行更細(xì)粒度的控制,例如:按交易渠道進(jìn)行控制;
2
T/CESAXXXX-2020
c)熔斷降級:如果某個服務(wù)的失敗率比較高,或者發(fā)現(xiàn)一些明確的異常情況,有可能影響到其
他服務(wù)的正常運(yùn)行,自動切斷該服務(wù)的所有請求(直接拋錯或者返回約定信息),以保護(hù)
系統(tǒng)整體的可用性。
5.3微服務(wù)引擎
微服務(wù)引擎為微服務(wù)平臺提供運(yùn)行保障,應(yīng)包括如下功能:
a)服務(wù)注冊/發(fā)現(xiàn):服務(wù)提供者在啟動時將服務(wù)相關(guān)信息注冊到“注冊中心”,服務(wù)消費(fèi)者通
過“注冊中心”獲取到最新的服務(wù)列表,當(dāng)服務(wù)提供者下線時,注冊信息從“注冊中心”
刪除,服務(wù)消費(fèi)者更新服務(wù)提供者列表;
b)負(fù)載均衡:服務(wù)消費(fèi)者調(diào)用提供者時,根據(jù)本地列表并依據(jù)指定的算法選擇具體的提供者進(jìn)
行調(diào)用,整體需保證到多個提供者上的負(fù)載相對均衡,平臺需提供多種常用的負(fù)載均衡策
略,例如:輪訓(xùn)、隨機(jī)、最小并發(fā)數(shù)等;
c)自動隔離/恢復(fù):當(dāng)服務(wù)提供者出現(xiàn)異常情況(例如宕機(jī)),自動從“注冊中心”刪除,當(dāng)
其恢復(fù)后又自動加入,期間消費(fèi)者同步獲取到最新的服務(wù)提供者列表;
d)集群容錯:當(dāng)服務(wù)調(diào)用發(fā)生異常時,提供多種容錯機(jī)制,例如:重試(可以設(shè)定重試次數(shù))、
直接拋錯等機(jī)制。
5.4運(yùn)維監(jiān)控
運(yùn)維監(jiān)控為微服務(wù)平臺提供管理能力,應(yīng)包括:
a)灰度發(fā)布:服務(wù)有新的版本發(fā)布時,可通過灰度發(fā)布只對部分用戶開放,運(yùn)行一段時間如果
達(dá)到預(yù)期,再對所有用戶開放;
b)統(tǒng)一配置:通過統(tǒng)一的配置中心快速完成多個微服務(wù)實(shí)例相關(guān)參數(shù)的調(diào)整,同時提供配置信
息的版本管理,防止配置出現(xiàn)問題時統(tǒng)一回退;
c)服務(wù)治理:服務(wù)治理主要對服務(wù)運(yùn)行態(tài)的情況進(jìn)行動態(tài)調(diào)控。
1)負(fù)載策略調(diào)整:對多個服務(wù)提供者的負(fù)載均衡策略進(jìn)行調(diào)整,防止某個提供者上的負(fù)載
過高;
2)流控策略調(diào)整:根據(jù)實(shí)際需要,對流量控制的策略進(jìn)行動態(tài)調(diào)整;
3)熔斷降級控制:對服務(wù)的熔斷及降級的策略進(jìn)行調(diào)整;
4)路由控制:通過配置對服務(wù)的路由策略進(jìn)行干預(yù),例如:暫時把某一個服務(wù)提供者屏蔽。
d)調(diào)用鏈跟蹤:支持查看服務(wù)調(diào)用過程的完整鏈路信息,以主動發(fā)現(xiàn)和追蹤業(yè)務(wù)系統(tǒng)的調(diào)用關(guān)
系,快速定位系統(tǒng)瓶頸;
e)分布式日志:把分布式系統(tǒng)下的相關(guān)日志信息進(jìn)行采集、匯總,并把跨多個微服務(wù)的日志串
接起來,提供統(tǒng)一的頁面按不同維度進(jìn)行日志信息的查詢;
f)監(jiān)控告警:對相關(guān)的監(jiān)控對象制定對應(yīng)的告警策略,當(dāng)達(dá)到告警條件時產(chǎn)生告警信息,以便
運(yùn)維人員及時處理。
注:監(jiān)控對象應(yīng)至少包括系統(tǒng)運(yùn)行資源、服務(wù)的運(yùn)行情況。
6分布式數(shù)據(jù)
3
T/CESAXXXX-2020
6.1概述
分布式數(shù)據(jù)的主要目的是將大數(shù)據(jù)量的關(guān)系型表通過水平拆分的方式,將數(shù)據(jù)分布式的存儲到
多個不同的節(jié)點(diǎn),查詢時可以到具體的節(jié)點(diǎn)快速訪問。行業(yè)內(nèi)主要包括技術(shù)架構(gòu)層實(shí)現(xiàn)和采用獨(dú)立
的“分布式數(shù)據(jù)庫”兩種模式??紤]到分布式數(shù)據(jù)庫是一個單獨(dú)的領(lǐng)域,該部分不包含在本文件內(nèi),
本文件僅涉及技術(shù)架構(gòu)層實(shí)現(xiàn)模式,主要包括:數(shù)據(jù)路由、語法兼容性、數(shù)據(jù)庫關(guān)聯(lián)性及運(yùn)維監(jiān)控
幾個方面。
6.2主要用語說明
分布式數(shù)據(jù)涉及到的術(shù)語主要包括:
a)數(shù)據(jù)分片:簡稱分片,將一張表的數(shù)據(jù)按照一定規(guī)則進(jìn)行拆分,經(jīng)過拆分后的每一部分?jǐn)?shù)據(jù)
叫做一個數(shù)據(jù)分片;
b)分片鍵:也稱為拆分鍵,具體的拆分過程應(yīng)針對某一個業(yè)務(wù)屬性,按照一定規(guī)則進(jìn)行,這里
的業(yè)務(wù)屬性就是分片鍵,分片鍵一般都是表中的字段,例如,對“客戶信息”表按照“客
戶號”取模的方式進(jìn)行拆分,“客戶號”就是分片鍵;
c)拆分算法:也稱為分片算法,指用于計(jì)算相關(guān)數(shù)據(jù)在哪個分片的算法,b)中的取模是一種
常用的拆分算法;
d)路由:按照拆分算法將SQL發(fā)送到具體的分片上執(zhí)行的過程稱為路由;
e)數(shù)據(jù)節(jié)點(diǎn):簡稱節(jié)點(diǎn),其概念類似分片,但分片是從數(shù)據(jù)的視角來看的,屬于邏輯概念,而
節(jié)點(diǎn)則泛指分片的物理體現(xiàn);
注:物理體現(xiàn)的方式有多種,最常用的就是一個分片對應(yīng)一個數(shù)據(jù)庫實(shí)例。
f)分庫:當(dāng)一個分片對應(yīng)一個數(shù)據(jù)庫實(shí)例的時候,這里的每一個數(shù)據(jù)庫稱為分庫;
g)分表:當(dāng)一個分片對應(yīng)一個數(shù)據(jù)庫表的時候,這里的每一個表稱為分表。
6.3數(shù)據(jù)路由
數(shù)據(jù)路由是該部分的核心功能,主要為數(shù)據(jù)的拆分提供策略性支持,應(yīng)包括:
a)提供成熟的拆分算法:應(yīng)包括取模、日期、范圍、枚舉、哈希等常用算法;
b)支持自定義拆分算法:在上述基本的拆分算法之外提供擴(kuò)展機(jī)制,支持開發(fā)人員根據(jù)實(shí)際業(yè)
務(wù)需要自定義更加匹配的算法;
c)同時支持分庫和分表:不僅支持分庫,還支持在分庫的基礎(chǔ)上進(jìn)行分表,以防止在某些情況
下分庫數(shù)過多,造成運(yùn)維的不可控;
d)指定路由:對某些特殊的SQL支持指定節(jié)點(diǎn)執(zhí)行;
e)間接路由:對于一些使用率較高的SQL,但其WHERE條件又不包含分片鍵的情況(例如:客
戶信息表按客戶號分片,用手機(jī)號查詢),應(yīng)提供間接通過分片鍵路由的機(jī)制;
f)多維路由:支持同時按多個維度進(jìn)行拆分及路由。
6.4語法兼容性
該機(jī)制應(yīng)支持常用的SQL語句類型,主要包括:
a)支持包含分片鍵的增加、刪除、修改和查詢;
4
T/CESAXXXX-2020
b)跨庫的聚合函數(shù)、關(guān)聯(lián)查詢、排序、分頁、分組、聯(lián)合查詢等常用組合;
c)支持字符串、數(shù)學(xué)、日期、格式化、聚合等常用函數(shù)。
6.5數(shù)據(jù)庫關(guān)聯(lián)性
該機(jī)制不應(yīng)跟具體的數(shù)據(jù)庫綁定,應(yīng)支持常用的關(guān)系型數(shù)據(jù)庫。
6.6運(yùn)維監(jiān)控
應(yīng)提供全面的運(yùn)維監(jiān)控能力,降低運(yùn)維的復(fù)雜度,主要包括:
a)可視化的對數(shù)據(jù)的拆分策略進(jìn)行調(diào)整;
b)對后端的數(shù)據(jù)庫進(jìn)行管理;
c)提供數(shù)據(jù)管理員的數(shù)據(jù)操作及管理功能;
d)提供在線擴(kuò)容機(jī)制。
7分布式緩存
本文件提到的分布式緩存主要指對緩存的分布式訪問,并不是指提供一個緩存服務(wù)器(隸屬于
基礎(chǔ)設(shè)施范疇)。主要提供低侵入的分布式緩存(行業(yè)內(nèi)目前基本以redis為主)的訪問機(jī)制,但
需要考慮對數(shù)據(jù)準(zhǔn)確性的要求。具體應(yīng)包括:
a)基礎(chǔ)的分布式訪問的API:提供緩存分布式訪問的基礎(chǔ)API,為業(yè)務(wù)框架及特殊情況使用提
供支持;
b)跟數(shù)據(jù)庫配合的讀寫支持:對于跟數(shù)據(jù)庫配合的查詢時,優(yōu)先從緩存中查詢,如果緩存中沒
有再查數(shù)據(jù)庫,并把結(jié)果放到緩存中;對于寫操作,提供機(jī)制保證緩存跟數(shù)據(jù)庫的數(shù)據(jù)一
致性。上述操作應(yīng)降低對業(yè)務(wù)的侵入,如果是基于Java的實(shí)現(xiàn)宜采用注解的模式;
c)臟數(shù)據(jù)的控制:如果并發(fā)的對緩存中的同一個數(shù)據(jù)進(jìn)行更新,或者一個緩存的更新跟查詢交
叉在一起的極端情況下,有可能造成臟數(shù)據(jù),應(yīng)提供完善的應(yīng)對機(jī)制。
8全局序列
全局序列為分布式系統(tǒng)提供統(tǒng)一的序列服務(wù),防止微服務(wù)的各個實(shí)例自己實(shí)現(xiàn),造成業(yè)務(wù)層面的序
列重復(fù)。應(yīng)提供如下三種類型的序列:
a)只保證唯一性,應(yīng)支持嵌入到應(yīng)用系統(tǒng)中使用;
b)不僅保證唯一性,還保證序列遞增;
c)不僅保證序列的唯一性和遞增特點(diǎn),還需保證序列完全連續(xù)。
9分布式調(diào)度
分布式調(diào)度主要應(yīng)對分布式系統(tǒng)各種任務(wù)的協(xié)同工作,最大限度發(fā)揮分布式系統(tǒng)的特性,以更
高效的方式完成待處理任務(wù)。具體應(yīng)包括:
a)可視化的定義要執(zhí)行的任務(wù)及其依賴關(guān)系;
5
T/CESAXXXX-2020
b)依據(jù)上述定義的依賴關(guān)系進(jìn)行執(zhí)行,執(zhí)行過程出現(xiàn)異常的任務(wù)可查看異常信息,并支持重新
執(zhí)行。執(zhí)行時可將任務(wù)分配到多個節(jié)點(diǎn),如果節(jié)點(diǎn)有異常應(yīng)切換到其他節(jié)點(diǎn);
c)提供機(jī)制保證在任何時間都至少有一個調(diào)度節(jié)點(diǎn)可用;
d)對涉及大數(shù)據(jù)量的表的任務(wù),支持對數(shù)據(jù)進(jìn)行分段,將其拆分為多個小的任務(wù)并行到多個節(jié)
點(diǎn)執(zhí)行;
e)至少支持手動和定時執(zhí)行兩種方式;
f)可視化的查看任務(wù)的執(zhí)行情況,并進(jìn)行相關(guān)操作。
10分布式事務(wù)
10.1概述
分布式事務(wù)是分布式領(lǐng)域重點(diǎn)關(guān)注的問題,不同的業(yè)務(wù)場景對事務(wù)的關(guān)注點(diǎn)也有一定差異,主
要體現(xiàn)在隔離性、一致性保證度、風(fēng)險(xiǎn)、性能及業(yè)務(wù)復(fù)雜度幾個方面,所以分布式平臺需要提供多
種不同的分布式事務(wù)處理機(jī)制,以適配不同的業(yè)務(wù)場景。
10.2處理機(jī)制
分布式事務(wù)的處理機(jī)制應(yīng)包括如下幾種模式:
a)補(bǔ)償模式:該模式在框架級提供統(tǒng)一的機(jī)制,避免每個開發(fā)人員重復(fù)實(shí)現(xiàn),規(guī)避技術(shù)風(fēng)險(xiǎn)。
其主要應(yīng)用于一個事務(wù)跨多個服務(wù)的場景,要求每個服務(wù)都提供對應(yīng)的補(bǔ)償服務(wù),當(dāng)后續(xù)
的服務(wù)執(zhí)行失敗時,框架自動執(zhí)行前面服務(wù)的補(bǔ)償服務(wù),將已經(jīng)執(zhí)行成功的服務(wù)回退到執(zhí)
行前的狀態(tài);
注:這種模式是分布式系統(tǒng)中最基本的一種模式,適合一些不是非常關(guān)鍵、或者低頻的交易,即使出現(xiàn)不
一致造成的影響也不大,可以通過業(yè)務(wù)手段進(jìn)行處理。
b)TCC模式:一個完整的TCC模式由一個主業(yè)務(wù)服務(wù)和若干個從業(yè)務(wù)服務(wù)組成,主業(yè)務(wù)服務(wù)發(fā)
起并完成整個業(yè)務(wù)活動,從業(yè)務(wù)服務(wù)應(yīng)實(shí)現(xiàn)如下三個接口:
?Try:完成所有業(yè)務(wù)檢查、預(yù)留必須的業(yè)務(wù)資源;
?Confirm:真正執(zhí)行業(yè)務(wù)不作任何業(yè)務(wù)檢查,只使用Try階段預(yù)留的業(yè)務(wù)資源,操作滿
足冪等性;
?Cancel:釋放Try階段預(yù)留的業(yè)務(wù)資源,操作滿足冪等性。
如果所有的從業(yè)務(wù)服務(wù)的Try都執(zhí)行成功,就會分別進(jìn)行各自的Confirm;如果有一個失
敗,則分別執(zhí)行各自的Cancel;
注:該模式主要提供總體事務(wù)的控制機(jī)制,具體的邏輯由業(yè)務(wù)實(shí)現(xiàn),比較適合有極致性能需求的、對一致
性要求比較高的業(yè)務(wù)場景。
c)無侵入模式:該模式通過模擬數(shù)據(jù)庫內(nèi)部的機(jī)制,對事務(wù)(跨服務(wù)、跨數(shù)據(jù)庫)中的所有
SQL操作自動構(gòu)建UNDO、REDO的相關(guān)信息,并對相關(guān)記錄進(jìn)行鎖定。當(dāng)后續(xù)的執(zhí)行出現(xiàn)異
常時,事務(wù)管理器通過UNDO日志對前面已經(jīng)執(zhí)行的SQL操作進(jìn)行回滾。
注:該模式在保證隔離性的前提下,提供了很高的一致性,并且對業(yè)務(wù)系統(tǒng)無侵入,適合于大部分的業(yè)務(wù)
場景,是分布式事務(wù)落地的一個重要模式。
6
T/CESAXXXX-2020
11異常處理
分布式大幅提升了系統(tǒng)的擴(kuò)展性、性能及可用性,但復(fù)雜度也有所提升,在具體的實(shí)踐過程中
需對以下情況提供應(yīng)對機(jī)制:
a)系統(tǒng)運(yùn)行資源不足:在系統(tǒng)運(yùn)行過程中,當(dāng)發(fā)現(xiàn)系統(tǒng)運(yùn)行資源不足(例如:CPU長時間大于
80%)時,宜自動增加運(yùn)行實(shí)例,以提升系統(tǒng)整體的處理能力;
注:如果有云平臺的話,建議采用容器化的方式進(jìn)行自動擴(kuò)容。
b)數(shù)據(jù)量超出系統(tǒng)承載能力:當(dāng)系統(tǒng)運(yùn)行一段時間后,由于數(shù)據(jù)量的快速增長,已有的分庫數(shù)
已經(jīng)不能滿足業(yè)務(wù)需要時,應(yīng)對數(shù)據(jù)庫進(jìn)行擴(kuò)容,在擴(kuò)容過程中應(yīng)盡可能的減少對業(yè)務(wù)的
影響;
c)物理故障造成的事務(wù)異常:由于分布式事務(wù)涉及多個獨(dú)立的事務(wù)資源,所以不管是哪種模式,
在部分事務(wù)資源出現(xiàn)物理故障的情況下,都面臨不一致的風(fēng)險(xiǎn),針對于這種情況,應(yīng)提供
如下的應(yīng)對措施:
1)自動恢復(fù):當(dāng)物理故障解除后,系統(tǒng)可以自動檢測,并對受影響的事務(wù)提供自動處理機(jī)
制,盡最大可能保證事務(wù)的一致性,避免相關(guān)事務(wù)由人工處理;
2)人工干預(yù):當(dāng)出現(xiàn)極端異常情況,自動恢復(fù)機(jī)制也無法恢復(fù)的情況下,應(yīng)支持人工干預(yù),
并提供必要的事務(wù)信息(例如:全局事務(wù)狀態(tài)、出現(xiàn)問題的分支信息、事務(wù)的上下文
等)以供分析。
7
T/CESAXXXX-2020
參考文獻(xiàn)
[1]GB/T10113-2003分類與編碼通用術(shù)語
[2]GB/T5271.1-2000信息技術(shù)詞匯第1部分:基本術(shù)語
[3]GB/T29246-2012信息技術(shù)安全技術(shù)信息安全管理體系概述和詞匯
8
T/CESAXXXX-2020
目??次
目??次.............................................................................................................................................................II
1范圍...................................................................................................................................................................1
2規(guī)范性引用文件...............................................................................................................................................1
3術(shù)語和定義.......................................................................................................................................................1
4概述...................................................................................................................................................................1
5微服務(wù)平臺.......................................................................................................................................................2
5.1概述...........................................................................................................................................................2
5.2接入網(wǎng)關(guān)...................................................................................................................................................2
5.3微服務(wù)引擎...............................................................................................................................................3
5.4運(yùn)維監(jiān)控...................................................................................................................................................3
6分布式數(shù)據(jù).......................................................................................................................................................3
6.1概述...........................................................................................................................................................4
6.2主要用語說明...........................................................................................................................................4
6.3數(shù)據(jù)路由...................................................................................................................................................4
6.4語法兼容性...............................................................................................................................................4
6.5數(shù)據(jù)庫關(guān)聯(lián)性...........................................................................................................................................5
6.6運(yùn)維監(jiān)控...................................................................................................................................................5
7分布式緩存.......................................................................................................................................................5
8全局序列...........................................................................................................................................................5
9分布式調(diào)度.......................................................................................................................................................5
10分布式事務(wù).....................................................................................................................................................6
10.1概述.........................................................................................................................................................6
10.2處理機(jī)制.................................................................................................................................................6
11異常處理.........................................................................................................................................................7
參考文獻(xiàn).........................................................................................................................................................8
II
T/CESAXXXX-2020
分布式平臺技術(shù)規(guī)范
1范圍
本文件規(guī)定了面向聯(lián)機(jī)交易系統(tǒng)的分布式平臺應(yīng)覆蓋的范圍及應(yīng)具備的基礎(chǔ)功能。
本文件適用于聯(lián)機(jī)交易系統(tǒng)所使用的分布式平臺的建設(shè)。
2規(guī)范性引用文件
本文件沒有規(guī)范性引用文件。
3術(shù)語和定義
下列術(shù)語和定義適用于本文件。
3.1
數(shù)據(jù)data
信息的可再解釋的形式化表示,以適用于通信、解釋或處理
注:可以通過人工或自動手段處理數(shù)據(jù)。
[GB/T5271.1-2000,01.01.02]
3.2
分布式distributed
<計(jì)算機(jī)>物理上由多個不同的機(jī)器參與執(zhí)行,但在邏輯上完成的是一個任務(wù)
注:對使用者來說,就像一臺計(jì)算機(jī)在執(zhí)行一樣。
3.3
微服務(wù)microservice
<計(jì)算機(jī)>職責(zé)單一的、輕量化的服務(wù)單元
注:一個微服務(wù)有自己獨(dú)立的應(yīng)用和數(shù)據(jù)庫。
3.4
事務(wù)transaction
<計(jì)算機(jī)>訪問并可能更新事務(wù)資源中各種數(shù)據(jù)項(xiàng)的一個程序執(zhí)行單元(unit)
注:一個事務(wù)如果執(zhí)行成功就全部提交,如果有一個失敗就全部回滾。
4概述
分布式平臺需要為系統(tǒng)提供全方位的分布式能力,當(dāng)性能遇到瓶頸時可通過橫向擴(kuò)展的機(jī)制予
1
T/CESAXXXX-2020
以解決,并且需對分布式帶來的事務(wù)問題提供完備的解決方案。不同領(lǐng)域的聯(lián)機(jī)交易系統(tǒng)對分布式
的需求存在一定差異,在進(jìn)行系統(tǒng)建設(shè)時可按需選擇,分布式聯(lián)機(jī)交易系統(tǒng)的參考架構(gòu)見圖1,其
中分布式平臺應(yīng)包括:
a)微服務(wù)平臺:提供應(yīng)用層的分布式能力,將一個復(fù)雜系統(tǒng)拆分為多個微服務(wù),每個微服務(wù)可
同時運(yùn)行多個實(shí)例,不僅提升了系統(tǒng)的擴(kuò)展性、可用性,還可以快速靈活的應(yīng)對業(yè)務(wù)變化;
b)分布式數(shù)據(jù):將大數(shù)據(jù)量表中的數(shù)據(jù)進(jìn)行水平拆分,用多個物理庫來承載,不僅降低了單表
的數(shù)據(jù)量,還增加了可用的物理資源;
c)分布式緩存:對于大量的數(shù)據(jù)查詢請求,采用分布式緩存進(jìn)行存儲,降低對數(shù)據(jù)庫的交互次
數(shù),縮短服務(wù)的響應(yīng)時間;
d)全局序列:提供跨多個微服務(wù)實(shí)例的序列服務(wù),以防止不同實(shí)例中的序列重復(fù);
e)分布式調(diào)度:提供統(tǒng)一的分布式調(diào)度機(jī)制,協(xié)調(diào)多個微服務(wù)節(jié)點(diǎn)及數(shù)據(jù)庫節(jié)點(diǎn)共同參與運(yùn)行,
充分利用物理資源,將批量處理的時間控制在有效范圍內(nèi);
f)分布式事務(wù):由于微服務(wù)和分布式數(shù)據(jù),就會帶來分布式事務(wù)的問題,所以需提供跨數(shù)據(jù)庫、
跨微服務(wù)的事務(wù)一致性的保證機(jī)制。
圖1分布式聯(lián)機(jī)交易系統(tǒng)架構(gòu)
5微服務(wù)平臺
5.1概述
微服務(wù)平臺的主要目的是為聯(lián)機(jī)交易系統(tǒng)提供應(yīng)用分布式的運(yùn)行機(jī)制,以及配套的管理體系,
主要包括:接入網(wǎng)關(guān)、微服務(wù)引擎和運(yùn)維監(jiān)控三大部分。
5.2接入網(wǎng)關(guān)
接入網(wǎng)關(guān)為外部系統(tǒng)訪問提供統(tǒng)一的接入及控制,應(yīng)包括:
a)服務(wù)鑒權(quán):對服務(wù)的訪問進(jìn)行控制,只有在權(quán)限范圍內(nèi)的才可以訪問,否則將被拒絕;
b)流量控制:對請求的總量進(jìn)行控制,如果超過限制,后續(xù)的請求將會被拒絕或者等待,還可
以按具體的業(yè)務(wù)維度進(jìn)行更細(xì)粒度的控制,例如:按交易渠道進(jìn)行控制;
2
T/CESAXXXX-2020
c)熔斷降級:如果某個服務(wù)的失敗率比較高,或者發(fā)現(xiàn)一些明確的異常情況,有可能影響到其
他服務(wù)的正常運(yùn)行,自動切斷該服務(wù)的所有請求(直接拋錯或者返回約定信息),以保護(hù)
系統(tǒng)整體的可用性。
5.3微服務(wù)引擎
微服務(wù)引擎為微服務(wù)平臺提供運(yùn)行保障,應(yīng)包括如下功能:
a)服務(wù)注冊/發(fā)現(xiàn):服務(wù)提供者在啟動時將服務(wù)相關(guān)信息注冊到“注冊中心”,服務(wù)消費(fèi)者通
過“注冊中心”獲取到最新的服務(wù)列表,當(dāng)服務(wù)提供者下線時,注冊信息從“注冊中心”
刪除,服務(wù)消費(fèi)者更新服務(wù)提供者列表;
b)負(fù)載均衡:服務(wù)消費(fèi)者調(diào)用提供者時,根據(jù)本地列表并依據(jù)指定的算法選擇具體的提供者進(jìn)
行調(diào)用,整體需保證到多個提供者上的負(fù)載相對均衡,平臺需提供多種常用的負(fù)載均衡策
略,例如:輪訓(xùn)、隨機(jī)、最小并發(fā)數(shù)等;
c)自動隔離/恢復(fù):當(dāng)服務(wù)提供者出現(xiàn)異常情況(例如宕機(jī)),自動從“注冊中心”刪除,當(dāng)
其恢復(fù)后又自動加入,期間消費(fèi)者同步獲取到最新的服務(wù)提供者列表;
d)集群容錯:當(dāng)服務(wù)調(diào)用發(fā)生異常時,提供多種容錯機(jī)制,例如:重試(可以設(shè)定重試次數(shù))、
直接拋錯等機(jī)制。
5.4運(yùn)維監(jiān)控
運(yùn)維監(jiān)控為微服務(wù)平臺提供管理能力,應(yīng)包括:
a)灰度發(fā)布:服務(wù)有新的版本發(fā)布時,可通過灰度發(fā)布只對部分用戶開放,運(yùn)行一段時間如果
達(dá)到預(yù)期,再對所有用戶開放;
b)統(tǒng)一配置:通過統(tǒng)一的配置中心快速完成多個微服務(wù)實(shí)例相關(guān)參數(shù)的調(diào)整,同時提供配置信
息的版本管理,防止配置出現(xiàn)問題時統(tǒng)一回退;
c)服務(wù)治理:服務(wù)治理主要對服務(wù)運(yùn)行態(tài)的情況進(jìn)行動態(tài)調(diào)控。
1)負(fù)載策略調(diào)整:對多個服務(wù)提供者的負(fù)載均衡策略進(jìn)行調(diào)整,防止某個提供者上的負(fù)載
過高;
2)流控策略調(diào)整:根據(jù)實(shí)際需要,對流量控制的策略進(jìn)行動態(tài)調(diào)整;
3)熔斷降級控制:對服務(wù)的熔斷及降級的策略進(jìn)行調(diào)整;
4)路由控制:通過配置對服務(wù)的路由策略進(jìn)行干預(yù),例如:暫時把某一個服務(wù)提供者屏蔽。
d)調(diào)用鏈跟蹤:支持查看服務(wù)調(diào)用過程的完整鏈路信息,以主動發(fā)現(xiàn)和追蹤業(yè)務(wù)系統(tǒng)的調(diào)用關(guān)
系,快速定位系統(tǒng)瓶頸;
e)分布式日志:把分布式系統(tǒng)下的相關(guān)日志信息進(jìn)行采集、匯總,并把跨多個微服務(wù)的日志串
接起來,提供統(tǒng)一的頁面按不同維度進(jìn)行日志信息的查詢;
f)監(jiān)控告警:對相關(guān)的監(jiān)控對象制定對應(yīng)的告警策略,當(dāng)達(dá)到告警條件時產(chǎn)生告警信息,以便
運(yùn)維人員及時處理。
注:監(jiān)控對象應(yīng)至少包括系統(tǒng)運(yùn)行資源、服務(wù)的運(yùn)行情況。
6分布式數(shù)據(jù)
3
T/CESAXXXX-2020
6.1概述
分布式數(shù)據(jù)的主要目的是將大數(shù)據(jù)量的關(guān)系型表通過水平拆分的方式,將數(shù)據(jù)分布式的存儲到
多個不同的節(jié)點(diǎn),查詢時可以到具體的節(jié)點(diǎn)快速訪問。行業(yè)內(nèi)主要包括技術(shù)架構(gòu)層實(shí)現(xiàn)和采用獨(dú)立
的“分布式數(shù)據(jù)庫”兩種模式??紤]到分布式數(shù)據(jù)庫是一個單獨(dú)的領(lǐng)域,該部分不包含在本文件內(nèi),
本文件僅涉及技術(shù)架構(gòu)層實(shí)現(xiàn)模式,主要包括:數(shù)據(jù)路由、語法兼容性、數(shù)據(jù)庫關(guān)聯(lián)性及運(yùn)維監(jiān)控
幾個方面。
6.2主要用語說明
分布式數(shù)據(jù)涉及到的術(shù)語主要包括:
a)數(shù)據(jù)分片:簡稱分片,將一張表的數(shù)據(jù)按照一定規(guī)則進(jìn)行拆分,經(jīng)過拆分后的每一部分?jǐn)?shù)據(jù)
叫做一個數(shù)據(jù)分片;
b)分片鍵:也稱為拆分鍵,具體的拆分過程應(yīng)針對某一個業(yè)務(wù)屬性,按照一定規(guī)則進(jìn)行,這里
的業(yè)務(wù)屬性就是分片鍵,分片鍵一般都是表中的字段,例如,對“客戶信息”表按照“客
戶號”取模的方式進(jìn)行拆分,“客戶號”就是分片鍵;
c)拆分算法:也稱為分片算法,指用于計(jì)算相關(guān)數(shù)據(jù)在哪個分片的算法,b)中的取模是一種
常用的拆分算法;
d)路由:按照拆分算法將SQL發(fā)送到具體的分片上執(zhí)行的過程稱為路由;
e)數(shù)據(jù)節(jié)點(diǎn):簡稱節(jié)點(diǎn),其概念類似分片,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 管理會計(jì)(第三版)課件 徐艷 模塊6-10 短期經(jīng)營決策的分析與應(yīng)用- 責(zé)任會計(jì)
- 液體的熱脹冷縮實(shí)驗(yàn)說課
- 2025年高壓電工技能考試:高壓設(shè)備維護(hù)保養(yǎng)計(jì)劃案例分析試題匯編
- 2025年消防執(zhí)業(yè)資格考試題庫(專業(yè)技能提升題)消防安全應(yīng)急預(yù)案演練修訂試題
- 創(chuàng)業(yè)個人能力總結(jié)
- 2025年心理咨詢師實(shí)操技能考核試卷:心理咨詢師心理治療技巧試題
- 2025年高壓電工考試題庫:高壓操作安全規(guī)范與電力系統(tǒng)故障處理試題
- 2025年小學(xué)英語畢業(yè)模擬試卷:英語短劇表演腳本創(chuàng)作與角色扮演技巧試題
- 幼兒食品衛(wèi)生安全教案
- 2025年中班不挑食的健康標(biāo)準(zhǔn)教案
- 公司上下級管理制度
- 全國各氣象臺站區(qū)站號及經(jīng)緯度
- 危險(xiǎn)廢物貯存場所管理規(guī)定
- 全國優(yōu)質(zhì)課一等獎職業(yè)學(xué)校教師信息化大賽建筑類《三面正投影圖》說課課件
- 秦漢時期建筑
- 東成28電錘使用說明書
- 六年級1班語文老師家長會課件
- 哲學(xué)與人生課件
- APIC 基于風(fēng)險(xiǎn)的數(shù)據(jù)完整性管理實(shí)踐指南-2019(中英文對照版)
- 港澳臺專題教育課件
- 環(huán)縣聲環(huán)境功能區(qū)劃技術(shù)報(bào)告(2018-2022)
評論
0/150
提交評論