想起一句話:”多加一層,就可以把問題解決了“
近段時間在做HA(高可用)的設計,資料庫使用Mongodb,測試場景是1主2從
測試發現,在往Mongodb批次寫入資料(100w的資料)時,主節點當機,當前請求會丟擲異常,下一請求自動切換到從節點上,而且100w的資料中有30w+的資料已同步到從節點上,說明Mongodb在執行CRUD時如果主節點當機會丟擲異常並且不能保證資料的一致性,即100w資料要麼全部插入,要麼全部不插入。
因此,在應用層和Mongodb之間多加一層資料訪問層(DAO),在DAO中捕獲異常後,清除本次出錯操作的狀態(如清除部分已插入的資料等),並重新執行,從而實現對應用的全透明。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/6906/viewspace-1989173/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用一個專案把控制層、業務層、持久層說明白了,每一句話都講的很清楚
- 解決原子性問題?腦海中有這個模型就可以了模型
- 一句話解釋TransformerORM
- 資料庫層面問題解決思路資料庫
- 解決小程式遮罩層滾動穿透問題遮罩穿透
- 一文揭秘DDD到底解決了什麼問題
- WebAssembly解決了哪些業務問題?Web
- 離職,問題就解決了嗎?
- JSR - 133 都解決了哪些問題?JS
- Promise到底解決了什麼問題?Promise
- 解決彈出層被Flash擋住的問題
- 一分鐘理解HTTPS到底解決了什麼問題HTTP
- 本週AI一句話摘要AI
- 一句話理解設計模式設計模式
- 一句話總結原型鏈原型
- Webpack的理解以及解決了的問題Web
- 混合雲管理問題,你解決了麼?
- ES6解決了什麼問題
- 這也許是Android一句話許可權適配的更優解決方案Android
- 一句話解釋什麼是社交證明(Social Proof)
- 網站安全問題針對一句話木馬函式的普析與防範網站函式
- 我最喜歡的一句話
- 一句話區分currentTarget和target
- 一句話設計模式,不再迷路~設計模式
- 一句話總結隨機森林隨機森林
- swift 定位封裝一句話使用Swift封裝
- 解決了一個小問題——讀原始碼真的只是為了應付面試?原始碼面試
- 函式計算|如何使用層解決依賴包問題?函式
- 爬蟲必備工具,掌握它就解決了一半的問題爬蟲
- 終於解決了《====》記一次mysql熱備份xtrabackup(沒有解決問題)MySql
- npm 換淘寶倉庫一句命令解決!NPM
- iptables一句話修復安全漏洞
- 一句話從 MySQL 取出重複行MySql
- 萌新之php一句話木馬PHP
- 一句話總結LLE(流形學習)
- Go etcd 的依賴問題終於解決了。。。Go
- 跨鏈橋的存在解決了什麼問題?
- 前端學習(2577):Nuxt解決了什麼問題前端UX
- 可編輯的DALL·E 3要來了?一句話就能PS圖片