原创 innodb鎖-開啓鎖監控功能

開啓鎖監控功能有兩種方式: 一.創建innodb_lock_monitor表 二.設置全局屬性innodb_status_output=1&innodb_status_output_locks=1 第一種方式: 開啓:CREATE

原创 innodb鎖-間隙鎖

前言: Gap Locks譯稱間隙鎖,本文參考官方文檔進行學習說明外加實驗例子 數據庫版本: SELECT VERSION(); ±-----------+ | version() | ±-----------+ | 5.6.3

原创 innodb鎖-共享鎖排他鎖

前言: Shared and Exclusive Locks譯稱共享鎖/排他鎖,本文參考官方文檔進行學習說明外加實驗例子 數據庫版本: SELECT VERSION(); ±-----------+ | version() |

原创 innodb鎖-不同索引下更新sql的加鎖過程

一、根據主鍵更新 mysql> start transaction; Query OK, 0 rows affected (0.00 sec) mysql> update test_user set status=1 where u

原创 innodb鎖-意向鎖

前言: Intention Locks譯稱意向鎖,Insert Intention Locks譯稱插入意向鎖,本文參考官方文檔進行學習說明 數據庫版本: SELECT VERSION(); ±-----------+ | vers

原创 innodb鎖-插入意向鎖

前言: Insert Intention Locks譯稱插入意向鎖,首先強調插入意向鎖是間隙鎖的一種,本文參考官方文檔進行學習說明 數據庫版本: SELECT VERSION(); ±-----------+ | version(

原创 innodb鎖-next-key鎖

前言: Next-Key Locks譯稱Next-Key鎖,本文參考官方文檔進行學習說明外加實驗例子 數據庫版本: SELECT VERSION(); ±-----------+ | version() | ±---------

原创 innodb鎖-innodb表鎖

innodb表鎖:不像myisam表可以自動鎖表,需要手動執行lock tables …read/write來進行鎖表操作 表鎖使用: 1.使用LOCK TABLES雖然可以給InnoDB加表級鎖,但必須說明的是,表鎖不是由Inn

原创 mysql鎖-間隙鎖死鎖分析

前言: 在上篇裏分析了一次mysql死鎖問題,後來又深入研究了下死鎖的其他場景,innodb間隙鎖場景下也可能會發生死鎖,所以進一步鞏固下間隙鎖的知識 gap鎖定義: 1.gap就是索引樹中插入新記錄的空隙 2.相應的gap鎖就

原创 mysql鎖-記一次innodb死鎖分析

前言: 最近項目上壓測出現了數據庫死鎖情況,經過一番排查,最終定位在updateData方法上 分析該方法: @Transactional(propagation = Propagation.REQUIRES_NEW) publi

原创 springboot-@Async默認線程池導致OOM問題

前言: 1.最近項目上在測試人員壓測過程中發現了OOM問題,項目使用springboot搭建項目工程,通過查看日誌中包含信息:unable to create new native thread 內存溢出的三種類型: 1.第一種O

原创 springboot源碼-內置tomcat初始化

前言: 1.承接springboot源碼-內置tomcat容器創建,對最後一個步驟getTomcatEmbeddedServletContainer(tomcat)進行詳細闡述 2.getTomcatEmbeddedServletC

原创 springboot源碼-內置tomcat創建過程

前言: 1.在Springboot-web應用啓動過程中,執行子容器的OnRefresh步驟時,創建並初始化一個內置的tomcat8容器 2.然後在執行子容器的finishRefresh步驟時,啓動tomcat容器 tomcat-

原创 springboot-Bean的創建過程

Bean的創建過程: DefaultListableBeanFactory->AbstractBeanFactory->AbstractAutowireCapableBeanFactory DefaultListableBeanFacto

原创 springboot-容器及啓動過程

SpringBoot會啓動兩個容器,即父子容器 父容器(Spring容器):AnnotationConfigWebApplicationContex 子容器(SpringMVC容器):AnnotationConfigEmbeddedWeb