2022年系統分析師下午案例分析真題(四)

系統分析師 責任編輯:胡媛 2022-05-28

添加老師微信

備考咨詢

加我微信

摘要:為幫助考生估分,希賽小編為大家整理了2022年系統分析師下午案例分析真題(四),希望對大家估分有幫助。

為方便廣大考生考后估分對答案,希賽網特向廣大學員和網友搜集整理了2022年系統分析師下午案例分析真題(四),供大家參考。希賽網老師也將在考后進行真題答案解析,敬請廣大考生關注。

試題四(共25分)

閱讀以下關于微服務架構中的數據管理的敘述,在答題紙上回答問題1至問題3。

【說明】

某大型電商平臺構建了一個在線B2B商店系統。該系統采用微服務架構,將系統功能分解為多個松散耦合且可獨立部署的較小組件或服務。最終設計的系統包括了電商系統中常見的服務:客戶服務、訂單服務、支付服務等,其中:

1、 客戶服務負責對客戶相關的信息進行管理和維護;

2、 訂單服務負責對訂單信息的管理和維護;

3、支付服務負責對在線支付功能和信息的管理和維護等。

為了確保微服務之間的松耦合,每個服務都有自己的數據,其中,訂單服務使用了 NoSQL 數據庫,客戶服務和支付服務使用了關系數據庫。

李工認為由于不同服務使用了各自的不同數據庫,使得跨服務操作可能存在數據不一致。比如訂單與支付的數據一致性問題,系統通過訂單服務在本地 NoSQL 數據庫中創(chuàng)建訂單記錄,同時在支付服務的關系數據庫中創(chuàng)建支付記錄,且必須保證訂單記錄和支付記錄的一致性,該問題在系統構建時需要考慮。

【問題1】(7分)

李工建議采用兩階段提交協議(2PC)來解決服務數據的一致性問題。請用200字以內的文字簡要說明2PC;說明2PC是否能解決該問題,并簡要解釋原因。

【問題2】(8分)

王工建議采用分布式數據管理方案,用事件驅動架構來解決服務數據的一致性問題,在訂單服務和支付服務之間通過可靠的消息隊列實現事件的傳遞,其基本操作步驟如下,請?zhí)顚懫渲械目瞻滋帯?/p>

(1)訂單服務接收訂購請求,創(chuàng)建一個訂單,該記錄狀態(tài)為(a),發(fā)布一個“創(chuàng)建訂單”事件;

(2)(b)接收“創(chuàng)建訂單”事件,記錄(c),發(fā)布一個“支付完成事件;

(3)訂單服務接收“支付完成”事件,修改訂單記錄狀態(tài)為(d)。

【問題3】(10分)

李工提出王工的方案會有數據庫更新和發(fā)布事件的原子性問題,例如訂單服務創(chuàng)建訂單記錄和發(fā)布“創(chuàng)建訂單”事件需要原子性保障,否則會出現數據不一致狀態(tài)。

王工認為可以使用本地事務發(fā)布事件的方法來解決該問題。請給出使用本地事務發(fā)布事件的基本方法,并說明該方法的缺點。

更多資料
更多課程
更多真題
溫馨提示:因考試政策、內容不斷變化與調整,本網站提供的以上信息僅供參考,如有異議,請考生以權威部門公布的內容為準!

軟考備考資料免費領取

去領取

!
咨詢在線老師!