国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

mysql - 為什么數據庫讀寫分離能提高數據庫的性能?

瀏覽:145日期:2022-06-12 10:22:50

問題描述

為什么讀寫分離可以提高數據庫的性能請看上面的博客。根據數據庫常識,讀寫分離確實可以提高數據庫的性能,但各位對它的底層原理不知道是否理解。比如,一臺讀,一臺寫,但數據仍然需要同步的,不然這個系統就沒了意義,那好了,同步的時候難道就不是一個寫操作嗎?那么實質上不是一樣?

問題解答

回答1:

但是讀的時候不需要同步啊,一臺讀的性能高,一臺寫的性能高。讀寫分離適用與讀遠大于寫的場景。

MySQL 使用了很多的數據庫存儲引擎,每個引擎既有優點也有缺點。有些不支持事物,但是性能和速度很高;有些讀取很快,但是寫入很慢,而有些則正好相反;…… 進行主從讀寫分離可以充分發揮每個數據庫引擎的優點。

你的疑問:但數據仍然需要同步的。其實這也不算是同步,因為所有的數據都是單項的。應用層的數據是直接寫入主庫,但是從庫的數據則是從 binlog 恢復的,而且,最重要區別在于主庫向從庫發送 binlog 是異步的,從庫恢復數據也是異步的。

就算是沒有從庫,那么主庫也需要把 binlog 數據寫入到硬盤或者其它的電腦,以防止數據庫故障。當數據庫出現問題后,DBA 也只能從 binlog 中恢復之前的數據。

在你的描述中:“一臺讀,一臺寫”。我才你可能是個初學者吧,或者沒有參與過真實的項目。真正線上的項目都是 N 臺讀寫,M 臺備份。做讀寫分離后就是 N 臺讀,N 臺寫,M 臺備份;或者 1 臺讀,1 臺寫,M 臺備份。

回答2:

讀寫分離的主要目的是分擔服務器壓力,適用于數據實時性要求不那么嚴格的業務,可以根據需要分別配置不同的系統參數來應對不同的讀寫需求,進而提高整個業務系統的整體性能!

相關文章:
主站蜘蛛池模板: 瑞金市| 疏勒县| 铜山县| 西宁市| 兰西县| 泾川县| 大田县| 吉木乃县| 乐山市| 夏津县| 延长县| 额尔古纳市| 海安县| 新干县| 凉城县| 西平县| 平湖市| 泰来县| 花莲市| 宝坻区| 河池市| 蕲春县| 枣强县| 韩城市| 塘沽区| 星子县| 江门市| 仪陇县| 故城县| 花垣县| 镇原县| 青龙| 改则县| 陇南市| 改则县| 天台县| 铁岭县| 宁海县| 建水县| 延川县| 冀州市|