使資料庫資料和快取中的資料在一定時間內保持一致
訪問資料庫之前先檢查快取中是否有快取,如果沒有在資料庫更新後更新快取。
應用先檢視快取中是否有該資料,有則直接使用,如果沒有,從資料庫載入,然後放入快取,下次以後再訪問就可以直接從快取中獲得。
在資料更新時,同時寫入快取cache和後端儲存(db)。此模式的優點是操作簡單;缺點是因為資料修改需要同時寫入儲存,資料寫入速度較慢。
在資料更新時只寫入快取cache。通常由乙個後台佇列檢查快取中資料的變化,再將據寫到後端儲存(db )。此模式的優點是資料寫入速度快,因為不需要寫儲存;缺點是一旦更新後的資料未被寫入儲存時出現系統掉電的情況,資料將無法找回。
網際網路公司普遍採用mysql+redis模式
大公司有能力直接修改資料庫低層或都實現自己的資料儲存,實現在資料庫更新時,直接更新快取,像阿里的ocs
linux同步機制
一.併發控制 1 自旋鎖 得不到資源,會原地打轉,直到獲得資源為止 定義自旋鎖 spinlock t spin 初始化自旋鎖 spin lock init lock 獲得自旋鎖 spin lock lock 獲得自旋鎖,如果能立即獲得,則馬上返回,否則自旋在那裡,直到該自旋鎖的保持者釋放 spin ...
MySQL 同步機制
innodb沒有使用作業系統同步機制,而是自己封裝,通過spin 自旋 和wait array 等待佇列 的設計提高效能 目前的cpu都支援tas指令。該指令通過讀取乙個位元組或者乙個word,然後和0比較,並且無條件的將其在記憶體中的值設為1,是原子操作。用到swap atomic操作,將記憶體中...
執行緒同步機制
本週主要學習 執行緒同步機制 互斥量 讀寫鎖和條件變數 和簡單程式的實現,對執行緒同步有了進一步認識 內容如下 執行緒的基本概念,相關函式 互斥量 說明 處於標圓形框之上的線段表示相關的執行緒沒有擁有互斥量 處於圓形框中心線之上的線段表示相關的執行緒等待互斥量 處於圓形框中心線之下的線段表示相關的執...