Memcache CAS協議介紹及使用

2022-08-14 07:54:11 字數 577 閱讀 4220

所謂cas,check and set,在寫操作時,先檢查是否被別的執行緒修改過。

基本原理非常簡單,一言以蔽之,就是「版本號」。每個儲存的資料物件,多有乙個版本號。我們可以從下面的例子來理解:

如果不採用cas,則有如下的情景:

第一步,a取出資料物件x;

第二步,b取出資料物件x;

第三步,b修改資料物件x,並將其放入快取;

第四步,a修改資料物件x,並將其放入快取。

我們可以發現,第四步中會產生資料寫入衝突。

如果採用cas協議,則是如下的情景。

第一步,a取出資料物件x,並獲取到cas-id1;

第二步,b取出資料物件x,並獲取到cas-id2;

第三步,b修改資料物件x,在寫入快取前,檢查cas-id與快取空間中該資料的cas-id是否一致。結果是「一致」,就將修改後的帶有cas-id2的x寫入到快取。

第四步,a修改資料物件y,在寫入快取前,檢查cas-id與快取空間中該資料的cas-id是否一致。結果是「不一致」,則拒絕寫入,返回儲存失敗。

這樣cas協議就用了「版本號」的思想,解決了衝突問題。

來自為知筆記(wiz)

SSH協議介紹

1 什麼是ssh ssh是英文secure shell的簡寫形式。通過使用ssh,你可以把所有傳輸的資料進行加密,這樣 中間人 這種攻擊方式就不可能實現了,而且也能夠防止dns欺騙和ip欺騙。使用ssh,還有乙個額外的好處就是傳輸的資料是經過壓縮的,所以可以加快傳輸的速度。ssh有很多功能,它既可以...

RTSP協議介紹

圖1 rtsp與rtp和rtcp的關係 rtsp有兩類報文 請求報文和響應報文。請求報文是指從客戶向伺服器傳送請求報文,響應報文是指從伺服器到客戶的回答。由於 rtsp 是面向正文的 text oriented 因此在報文中的每乙個欄位都是一些 ascii 碼串,因而每個欄位的長度都是不確定的。rt...

snmp協議介紹

snmp協議概述 snmp work management protocol 即簡單網路管理協議,它為網路管理系統提供了底層網路管理的框架。snmp協議的應用範圍非常廣泛,諸多種類的網路裝置 軟體和系統中都有所採用,主要是因為snmp協議有如下幾個特點 首先,相對於其它種類的網路管理體系或管理協議而...