背景 以前接觸到的數據庫死鎖,都是批量更新時加鎖順序不一致而導致的死鎖,但是上周卻遇到了一個很難理解的死鎖。借着這個機會又重新學習了一下mysql的死鎖知識以及常見的死鎖場景。在多方調研以及和同事們的討論下終於發現了這個死鎖問題的成因,收獲頗多。雖然是后端程序員,我們不需要像DBA一樣深入 ...
開卷故意,好久沒寫博客了,近期工作也挺忙的。 死鎖距離我不遙遠。最終還是在高並發時被我碰到了。 DeadLock Found 雖然編程風格中會盡量避免死鎖,可是還是被我碰上了。文章可能看不出來我在做什么事情。僅僅是記錄自己的一個排除死鎖的過程。 事情起源於兩個聯動的緩存 redis 異步數據庫讀寫操作。 事務中的這句出現死鎖: DELETE FROM table WHERE FROM key h ...
2016-01-03 17:53 0 2451 推薦指數:
背景 以前接觸到的數據庫死鎖,都是批量更新時加鎖順序不一致而導致的死鎖,但是上周卻遇到了一個很難理解的死鎖。借着這個機會又重新學習了一下mysql的死鎖知識以及常見的死鎖場景。在多方調研以及和同事們的討論下終於發現了這個死鎖問題的成因,收獲頗多。雖然是后端程序員,我們不需要像DBA一樣深入 ...
背景以前接觸到的數據庫死鎖,都是批量更新時加鎖順序不一致而導致的死鎖,但是上周卻遇到了一個很難理解的死鎖。借着這個機會又重新學習了一下mysql的死鎖知識以及常見的死鎖場景。在多方調研以及和同事們的討論下終於發現了這個死鎖問題的成因,收獲頗多。雖然是后端程序員,我們不需要像DBA一樣深入地去分析 ...
一直聽說dapper的數據處理能力很強. 我也一直很喜歡. 不過最近的一次壓力測試卻出乎我的意料....好久沒寫東西,感覺自己都不知道怎么表達自己的意思了. 另外 這次的測試也是自己才開始的 . 也不知道測試思路和方式是否正確. 各位有什么就來吐槽吐槽吧. 測試代碼下載 http ...
...
在做數據緩存的時候,通常都是把數據從數據庫讀取出來,然后放入緩存,接下來在緩存的有效期內都是從緩存讀取數據減少數據庫壓力。但是在高並發環境下,就有可能出現問題,比如根據指定格式從redis下拿數據,但是當下key是不存在的,那么就需要往里面寫數據,如果多個進程同時請求,會造成數據的二次寫入 ...
目錄 一、問題詳情 top 命令截圖 聯系騰訊雲排查 檢查系統日志發現異常 二、 問題解析 三、問題原因 最終結 ...
1.================================================================================================================================ 高並發架構系列:分布式鎖的由來 ...
馬上就要離職了,想想工作中有些東西還是需要沉淀下來的,不僅僅要沉淀到心里,因為年紀大了_,很容易忘記,不是有句話么,好記性不如爛筆頭。 分析這個bug之前先說點別的。 解決bug的大致思路 我覺的解bug和醫生看病是一樣的,中醫看病講究望聞問切。軟件出了毛病也按這個套路來,但是不需要 ...