日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

面試官問到分布式事務(wù)?這樣回答就對了!

來源: 責(zé)編: 時間:2024-06-27 07:56:36 147觀看
導(dǎo)讀小王面試某互聯(lián)網(wǎng)公司高級開發(fā)崗位,介紹項目的時候,談到公司業(yè)務(wù)量和研發(fā)團隊暴增后,自己主導(dǎo)完成公司項目的架構(gòu)升級,從傳統(tǒng)的單體架構(gòu)升級到微服務(wù)架構(gòu),面試官接下來就問了一道經(jīng)典面試題:你們架構(gòu)升級過程中,分布式事務(wù)是

小王面試某互聯(lián)網(wǎng)公司高級開發(fā)崗位,介紹項目的時候,談到公司業(yè)務(wù)量和研發(fā)團隊暴增后,自己主導(dǎo)完成公司項目的架構(gòu)升級,從傳統(tǒng)的單體架構(gòu)升級到微服務(wù)架構(gòu),面試官接下來就問了一道經(jīng)典面試題:你們架構(gòu)升級過程中,分布式事務(wù)是如何解決的?請介紹一下。y7A28資訊網(wǎng)——每日最新資訊28at.com

看重點

y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

主要圍繞三個大方向:y7A28資訊網(wǎng)——每日最新資訊28at.com

1. 事務(wù)相關(guān)概念介紹;y7A28資訊網(wǎng)——每日最新資訊28at.com

 2. 分布式事務(wù)常見方案;y7A28資訊網(wǎng)——每日最新資訊28at.com

 3. 柔性事務(wù)之最大努力通知型落地實現(xiàn);y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

1.事務(wù)相關(guān)概念介紹

y7A28資訊網(wǎng)——每日最新資訊28at.com

事務(wù)是一系列的動作,它們綜合在一起才是一個完整的工作單元,這些動作必須全部完成,如果有一個失敗的話,那么事務(wù)就會回滾到最開始的狀態(tài),仿佛什么都沒發(fā)生過一樣。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

單事務(wù)概念

y7A28資訊網(wǎng)——每日最新資訊28at.com

應(yīng)用多次數(shù)據(jù)庫操作,通過用事務(wù)進行管理,來保證ACID原則。y7A28資訊網(wǎng)——每日最新資訊28at.com

原子性(A):操作這些指令時,要么全部執(zhí)行成功,要么全部不執(zhí)行。只要其中一個指令執(zhí)行失敗,所有的指令都執(zhí)行失敗,數(shù)據(jù)進行回滾,回到執(zhí)行指令前的數(shù)據(jù)狀態(tài)。y7A28資訊網(wǎng)——每日最新資訊28at.com

一致性(C):事務(wù)的執(zhí)行使數(shù)據(jù)從一個狀態(tài)轉(zhuǎn)換為另一個狀態(tài),事務(wù)在執(zhí)行之前和之后,數(shù)據(jù)庫都必須處于一致性狀態(tài)。y7A28資訊網(wǎng)——每日最新資訊28at.com

隔離性(I):在該事務(wù)執(zhí)行的過程中,無論發(fā)生的任何數(shù)據(jù)的改變都應(yīng)該只存在于該事務(wù)之中,對外界不存在任何影響。只有在事務(wù)確定正確提交之后,才會顯示該事務(wù)對數(shù)據(jù)的改變。其他事務(wù)才能獲取到這些改變后的數(shù)據(jù)。y7A28資訊網(wǎng)——每日最新資訊28at.com

持久性(D):當事務(wù)正確完成后,它對于數(shù)據(jù)的改變是永久性的。y7A28資訊網(wǎng)——每日最新資訊28at.com

分布式事務(wù)概念

y7A28資訊網(wǎng)——每日最新資訊28at.com

  1. 單應(yīng)用內(nèi)部調(diào)用(多個數(shù)據(jù)源調(diào)用,操作多個庫)以某業(yè)務(wù)的動態(tài)折扣業(yè)務(wù)場景為例:動態(tài)折扣規(guī)則-運營后臺配置(配置庫)用戶享受的動態(tài)折扣-用戶折扣記錄(按userId分片的分片庫,120個)
  2. 涉及多應(yīng)用調(diào)用(有可能操作同一個數(shù)據(jù)源,也有可能操作不同的數(shù)據(jù)源)以某業(yè)務(wù)用戶抵扣可用優(yōu)惠場景為例:用戶 -> 查詢可用優(yōu)惠 -> 支付訂單 -> 調(diào)用動態(tài)折扣系統(tǒng)抵扣 -> 調(diào)用優(yōu)惠券系統(tǒng)抵扣

CAP理論

y7A28資訊網(wǎng)——每日最新資訊28at.com

C:一致性,數(shù)據(jù)一致性:強一致性、弱一致性、最終一致性。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

強一致性:流程涉及的各個環(huán)節(jié)數(shù)據(jù)必須實時一致性y7A28資訊網(wǎng)——每日最新資訊28at.com

弱一致性:流程涉及的各個環(huán)節(jié)數(shù)據(jù)允許存在部分數(shù)據(jù)不一致y7A28資訊網(wǎng)——每日最新資訊28at.com

最終一致性:允許存在中間狀態(tài),只要求經(jīng)過一段時間后,數(shù)據(jù)最終是一致的y7A28資訊網(wǎng)——每日最新資訊28at.com

A:可用性:系統(tǒng)提供的服務(wù)必須一直處于可用的狀態(tài),對于用戶的每一個操作請求總是能夠在有限的時間內(nèi)返回結(jié)果。y7A28資訊網(wǎng)——每日最新資訊28at.com

P:分區(qū)容錯性(一定會存在):分布式系統(tǒng)在遇到任何網(wǎng)絡(luò)分區(qū)故障時,仍然需要能夠保證對外提供滿足一致性和可用性的服務(wù)。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

無法同時滿足CAP,常見組合:AP:互聯(lián)網(wǎng)業(yè)務(wù)  CP:金融業(yè)務(wù)y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

base理論

y7A28資訊網(wǎng)——每日最新資訊28at.com

base理論是CAP理論中AP方案的延伸,核心思想是即時無法做到強一致性,但每個應(yīng)用都可以根據(jù)自身業(yè)務(wù)特點,采用適當?shù)姆绞絹硎瓜到y(tǒng)達到最終一致性。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

Basically Available(基本可用)Soft state(軟狀態(tài),中間狀態(tài))Eventually consistent(最終一致性)y7A28資訊網(wǎng)——每日最新資訊28at.com

2.分布式事務(wù)常見方案

y7A28資訊網(wǎng)——每日最新資訊28at.com

分布式場景下,多個服務(wù)同時對服務(wù)一個流程,比如電商下單場景,需要支付服務(wù)進行支付、庫存服務(wù)扣減庫存、訂單服務(wù)進行訂單生成、物流服務(wù)更新物流信息等。如果某一個服務(wù)執(zhí)行失敗,或者網(wǎng)絡(luò)不通引起的請求丟失,那么整個系統(tǒng)可能出現(xiàn)數(shù)據(jù)不一致的原因。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

常見方案:y7A28資訊網(wǎng)——每日最新資訊28at.com

1. 設(shè)計方案盡可能規(guī)避分布式事務(wù)方案(相似的業(yè)務(wù)放在一起,不要過度拆分)y7A28資訊網(wǎng)——每日最新資訊28at.com

2. 強事務(wù)(CP, 低并發(fā)短事務(wù))和柔性事務(wù)(AP,高性能)y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

強事務(wù):滿足CP理論,XA協(xié)議(2PC、JTA、JTS)、3PC,但由于同步阻塞,處理效率低,適合低并發(fā)、短事務(wù)業(yè)務(wù)。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

2PC:Seeta(AT)、LCN(2PC),適合分布式系統(tǒng)   JTA:atomikos(適合單系統(tǒng)多數(shù)據(jù)源)y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

柔性事務(wù):滿足AP,base理論,適合異步更新數(shù)據(jù),并且對數(shù)據(jù)的實時性要求較低的場景,主要分為: .補償型(TCC、saga) .最大努力通知型(MQ、本地消息表) .異步確保型(MQ、本地消息表)y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

實現(xiàn)方式:TCC(seeta-tcc,lcn-tcc)、Saga(seeta-saga狀態(tài)機模式、Aop模式)、本地事務(wù)消息、事務(wù)消息MQy7A28資訊網(wǎng)——每日最新資訊28at.com

互聯(lián)網(wǎng)業(yè)務(wù),一般的流量比較大,涉及很多高并發(fā)場景,我們一般采用柔性事務(wù),這樣系統(tǒng)的性能好。y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

3.柔性事務(wù)之最大努力通知型落地實現(xiàn)

y7A28資訊網(wǎng)——每日最新資訊28at.com

互聯(lián)網(wǎng)應(yīng)用最廣泛:y7A28資訊網(wǎng)——每日最新資訊28at.com

y7A28資訊網(wǎng)——每日最新資訊28at.com

  1. 重試:通過本地消息表+job重試對賬+下游(接口冪等、提供接口的校驗)+(打印日志+告警+人工介入補償)基于本地消息表實現(xiàn)分布式事務(wù)基于mq實現(xiàn)柔性分布式事務(wù)。
  2. 回滾:1)程序捕獲異常,調(diào)用回滾代碼  2)發(fā)送回滾MQ,各個系統(tǒng)消費MQ,調(diào)用本地回滾方法。

本文鏈接:http://www.www897cc.com/showinfo-26-96756-0.html面試官問到分布式事務(wù)?這樣回答就對了!

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 探討 C++ vector 中的 at() 與 [] 運算符:安全性與性能的抉擇

下一篇: Java開發(fā)人員必須掌握的11種干凈代碼最佳實踐

標簽:
  • 熱門焦點
  • 不容錯過的MSBuild技巧,必備用法詳解和實踐指南

    一、MSBuild簡介MSBuild是一種基于XML的構(gòu)建引擎,用于在.NET Framework和.NET Core應(yīng)用程序中自動化構(gòu)建過程。它是Visual Studio的構(gòu)建引擎,可在命令行或其他構(gòu)建工具中使用
  • 十個簡單但很有用的Python裝飾器

    裝飾器(Decorators)是Python中一種強大而靈活的功能,用于修改或增強函數(shù)或類的行為。裝飾器本質(zhì)上是一個函數(shù),它接受另一個函數(shù)或類作為參數(shù),并返回一個新的函數(shù)或類。它們通常用
  • 自律,給不了Keep自由!

    來源 | 互聯(lián)網(wǎng)品牌官作者 | 李大為編排 | 又耳 審核 | 谷曉輝自律能不能給用戶自由暫時不好說,但大概率不能給Keep自由。近日,全球最大的在線健身平臺Keep正式登陸港交所,努力
  • 猿輔導(dǎo)與新東方的兩種“歸途”

    作者|卓心月 出品|零態(tài)LT(ID:LingTai_LT)如何成為一家偉大企業(yè)?答案一定是對“勢”的把握,這其中最關(guān)鍵的當屬對企業(yè)戰(zhàn)略的制定,且能夠站在未來看現(xiàn)在,即使這其中的
  • 機構(gòu)稱Q2國內(nèi)智能手機銷量同比下滑4% vivo份額重回第1

    7月29日消息,根據(jù)市場調(diào)查機構(gòu)Counterpoint Research公布的最新報告,2023年第2季度中國智能手機銷量同比下降4%,創(chuàng)新自2014年以來第2季度銷量新低。報
  • 聯(lián)想YOGA 16s 2022筆記本將要推出,屏幕支持觸控功能

    聯(lián)想此前宣布,將于11月2日19:30召開聯(lián)想秋季輕薄新品發(fā)布會,推出聯(lián)想 YOGA 16s 2022 筆記本等新品。官方稱,YOGA 16s 2022 筆記本將搭載 16 英寸屏幕,并且是一
  • 2022爆款:ROG魔霸6 冰川散熱系統(tǒng)持續(xù)護航

    喜逢開學(xué)季,各大商家開始推出自己的新產(chǎn)品,進行打折促銷活動。對于忠實的端游愛好者來說,能夠擁有一款夢寐以求的筆記本電腦是一件十分開心的事。但是現(xiàn)在的
  • 最薄的14英寸游戲筆記本電腦 Alienware X14已可以購買

    2022年1月份在國際消費電子展(CES2022)上首次亮相的Alienware新品——Alienware X14現(xiàn)在已經(jīng)可以購買了,這款筆記本電腦被譽為世界上最薄的 14 英寸游戲筆
  • 世界人工智能大會國際日開幕式活動在世博展覽館開啟

    30日上午,世界人工智能大會國際日開幕式活動在世博展覽館開啟,聚集國際城市代表、重量級院士專家、國際創(chuàng)新企業(yè)代表,共同打造人工智能交流平臺。上海市副市
Top 主站蜘蛛池模板: 宽城| 昭平县| 焉耆| 北安市| 翁牛特旗| 商水县| 文水县| 金华市| 建阳市| 曲水县| 准格尔旗| 南通市| 新和县| 信丰县| 福海县| 沿河| 古田县| 永善县| 福州市| 南部县| 大英县| 新泰市| 秦安县| 和静县| 通州区| 仲巴县| 奉贤区| 万源市| 乐平市| 班玛县| 平安县| 云龙县| 武功县| 丹巴县| 财经| 安远县| 普定县| 育儿| 岢岚县| 子长县| 新巴尔虎右旗|