日韩小视频-日韩久久一区二区三区-日韩久久一级毛片-日韩久久久精品中文字幕-国产精品亚洲精品影院-国产精品亚洲欧美云霸高清

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 數(shù)據(jù)庫 > DB2 > MongoDB:實(shí)現(xiàn)強(qiáng)一致性事務(wù)的必不可少之道(mongodb事務(wù))

MongoDB:實(shí)現(xiàn)強(qiáng)一致性事務(wù)的必不可少之道(mongodb事務(wù))

時(shí)間:2024-03-26 14:45作者:下載吧人氣:17

MongoDB 是一種新型**NoSQL**數(shù)據(jù)庫,它有著一系列的優(yōu)勢(shì),如在分片上的靈活性,包括一組集群內(nèi)部提供冗余復(fù)制和冗余容錯(cuò)等特性,并且由于它在完全復(fù)制集群上保持一致性,它被很多公司用來替代關(guān)系型數(shù)據(jù)庫成為旗艦數(shù)據(jù)存儲(chǔ)引擎。但是MongoDB 不支持ACID事務(wù),這就使得它不能滿足復(fù)雜應(yīng)用場(chǎng)景的嚴(yán)格一致性需求。

實(shí)現(xiàn)強(qiáng)一致性事務(wù)是MongoDB數(shù)據(jù)庫完成復(fù)雜業(yè)務(wù)的必須要求。建立在MongoDB的性能之上的**Mongo-Locking算法**,可以在只有兩個(gè)事務(wù)的情況下提供強(qiáng)一致性。它主要利用**樂觀鎖**和**悲觀鎖**。

樂觀鎖:樂觀鎖是一種基于版本號(hào)的鎖定實(shí)現(xiàn)。每個(gè)文檔都有一個(gè)_id,當(dāng)文檔被修改時(shí),將文檔_id副本克隆一下,并在它的_id里面引入一個(gè)版本號(hào),然后當(dāng)更新這個(gè)實(shí)體的時(shí)候去比較版本號(hào),如果版本號(hào)相同就允許這個(gè)更新,并更新版本號(hào),如果版本號(hào)不同就拒絕這個(gè)更新,這樣就能保證實(shí)體的強(qiáng)一致性。

“`js

// 更新文檔的樂觀鎖實(shí)現(xiàn)

db.collection.findAndModify({

query:{

_id: 3

},

update:{

$inc:{

version:1

},

$set:{

name:’foo’

}

},

new:true

});


悲觀鎖: 是一種基于共享鎖或排他鎖來保證實(shí)體完整性和可用性的鎖定實(shí)現(xiàn)。其原理就是當(dāng)一個(gè)實(shí)體被修改時(shí),就給這個(gè)實(shí)體加鎖,直到這個(gè)實(shí)體的修改操作完成,然后釋放鎖,這樣就保證了線程安全性和原子性更新。

```js
// 更新文檔的悲觀鎖實(shí)現(xiàn)
db.collection.findAndModify({
query:{
_id: 3
},
update:{
$set:{
name:'foo'
}
},
update lock:true
});

此外,強(qiáng)一致性事務(wù)實(shí)現(xiàn)還可以依靠MongoDB提供的4種不同的原子操作來實(shí)現(xiàn):$inc、$set、$push、$pull。

$inc:給指定字段累加指定值,可以用來支持類似購物車功能;

$set:更新部分字段,可以正確地實(shí)現(xiàn)對(duì)文檔的更新;

$push:追加新的內(nèi)容,可以用來支持日志的追溯功能;

$pull:從文檔中移除一個(gè)值,可以用來實(shí)現(xiàn)審計(jì)日志信息的記錄。

因此,MongoDB在實(shí)現(xiàn)強(qiáng)一致性事務(wù)時(shí),可以利用Mongo-Locking算法的樂觀鎖和悲觀鎖,還可以依靠MongoDB提供的4種不同的原子操作,為大型分布式系統(tǒng)管理資源提供基礎(chǔ)支持,從而實(shí)現(xiàn)強(qiáng)一致性事務(wù)。

標(biāo)簽mongodb 事務(wù),mongodb事務(wù),mongodb 事務(wù),MongoDB,實(shí)現(xiàn),更新,文檔,一致性,MongoDB,實(shí)體

相關(guān)下載

查看所有評(píng)論+

網(wǎng)友評(píng)論

網(wǎng)友
您的評(píng)論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號(hào)

主站蜘蛛池模板: 亚洲系列 | 色播基地| 国产精品日本一区二区不卡视频 | 九月婷婷亚洲综合在线 | 免费欧美一级 | 久草com | 欧美一级毛片免费观看视频 | 国内在线精品 | 国产乱码精品一区二区三区中 | 国产亚洲午夜精品a一区二区 | 亚洲国产精久久久久久久春色 | 一个人看的免费高清视频日本 | 韩日一区二区 | 香蕉网影院在线观看免费 | 精品欧美成人高清视频在线观看 | 亚洲欧美一区二区三区在饯 | 亚洲欧洲精品国产二码 | 99视频网站 | 成人网18免费网站 | 草久免费视频 | 亚洲成人欧美 | 国产高清免费不卡观看 | 欧美激情性色生活片在线观看 | 性色tv视频观看 | 日本一区二区三区在线 视频观看免费 | 9久久99久久久精品齐齐综合色圆 | 亚洲视频区 | 热久久伊人 | 欧美视频在线观看免费精品欧美视频 | 欧美日韩亚洲另类 | 娇喘嗯嗯~轻点啊视频福利 | 真人毛片视频 | 一区一精品 | 免费观看a级毛片在线播放 免费观看a级网站 | 国产三级视频在线 | 手机看片亚洲 | 欧美一级毛片怡红院 | 人与拘一级a毛片 | 国产三级日本三级美三级 | 午夜宅宅宅影院在线观看 | 亚洲欧洲日产国码一级毛片 |