redis阻塞隊列,mysql隔離級別與鎖,接口并發響應速度的關系(2)

 2023-11-18 阅读 24 评论 0

摘要:? ? innoDB默認隔離級別 mysql> SELECT @@tx_isolation; +-----------------+ | @@tx_isolation | +-----------------+ | REPEATABLE-READ | +-----------------+ redis阻塞隊列、? 兩個事務同時更新一條數據 右圖第二個事務的up

?

?

innoDB默認隔離級別

mysql> SELECT @@tx_isolation;
+-----------------+
| @@tx_isolation  |
+-----------------+
| REPEATABLE-READ |
+-----------------+

redis阻塞隊列、?

兩個事務同時更新一條數據

右圖第二個事務的update增加行鎖(表中id有索引), 在未提交之前,左圖第一個事務update操作會進入阻塞狀態, 左圖中仍然可以進行select

mysql存儲過程是什么。右圖第二個事務提交之后, 第一個事務會執行update并返回結果,但是還沒有提交,? 此時右圖的查詢結果是第二個事務提交的值

?

然后左圖第一個事務也提交, 會覆蓋右圖第二個事務的值。左圖操作的是右圖變更前的數據,這個在并發時是不正常的

mysql和sql的區別。

?

?

?

以下哪些線程同步鎖可以為遞歸鎖?更新數據庫的隔離級別為序列化

開啟兩個事務, 右圖進行update操作, 左圖事務的select操作會進入阻塞操作

右圖提交之后, 左圖事務select返回右圖提交之后的結果

數據庫隔離級別中的讀提交可以避免,

?

此時左圖再update commit, 會覆蓋右圖的結果。左圖操作的是右圖變更后的數據, 這個在并發時是正常的.

?

mysql基本使用。總結:?

可重復讀時,有幻讀的問題, 使用行寫鎖

序列化時,? select會阻塞,并發性能極低 == 沒有并發, 使用行讀鎖

?

mysql數據庫編程?使用索引select update時,會在行上加鎖(具體哪種鎖,讀,寫?),

不能使用索引時在表上加鎖, 表鎖也會極大的影響并發性能

?索引可以提高并發的原因:1.sql查詢的數據量小,sql響應快 2.行鎖,提高并發,不影響其他線程

?

mysql。TODO:: 分布式最終一致性,為什么可以不使用事務?

轉載于:https://www.cnblogs.com/yszzu/p/9296330.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/174019.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息