精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

并發的查詢請求增加時,數據架構部分如何做主從分離?

開發 前端
Elasticsearch中的索引分片可以被復制到多個節點,HDFS中的文件會被復制到多個DataNode。盡管不同組件對復制的一致性和延遲要求不同,但這種設計思想是通用的,對于理解和學習其他存儲組件非常有幫助。?

現在有一個架構圖如下所示:

圖片圖片

在這種情況下,咱們的數據庫仍然是單機部署。根據一些云廠商的基準測試結果,使用4核8GB的機器運行MySQL 5.7時,大約可以支持每秒500個事務(TPS)和每秒10,000個查詢(QPS)。然而,現在運營團隊正在準備雙十一活動,并且公司計劃在全渠道推廣中繼續投資,這顯然會導致查詢量突然增加的問題。因此,今天我們將探討如何通過主從分離來應對查詢請求的增加。

主從讀寫分離

實際上,許多系統都面臨著讀取操作遠多于寫入操作的情況,讀寫請求的數量差距可能達到幾個數量級。

這并不難理解,因為瀏覽朋友圈的請求肯定比發布朋友圈的請求多,而在線商店中,一個商品的瀏覽量肯定遠遠超過下單量。因此,我們首先考慮如何使數據庫能夠處理更多的查詢請求,而為此,首先需要將讀取流量和寫入流量分開,這就是我們所說的主從讀寫分離。

實際上,這是一種流量分流的策略,可以將其比作道路交通控制,其中一個有四個車道的主干道中有三個車道供領導和外賓使用,而另一個車道供一般市民使用,以確保領導和外賓能夠優先通過。這個策略是一種常規做法,即使在大型項目中,也是應對數據庫突發讀取流量增加的有效方法。

在我目前的項目中,我們曾經遇到前端流量突然增加導致從數據庫副本負載過高的問題,數據庫管理員首先擴展了從數據庫,這樣讀取流量就分散到多個從數據庫上,從而降低了從數據庫的負載。接下來,開發團隊再考慮如何在數據庫層之上采取措施來處理這一流量。

主從讀寫的兩個技術關鍵點

通常,在主從讀寫分離機制中,我們復制一個數據庫的數據到一個或多個其他數據庫服務器上,并將原始數據庫稱為主庫,其主要任務是處理數據寫入操作,而復制到的目標數據庫稱為從庫,主要用于支持數據查詢操作。主從讀寫分離涉及兩個關鍵技術點:首先,數據的拷貝,這稱為主從復制;其次,在主從分離的情況下,如何屏蔽應用訪問數據庫時的變化,以使開發人員感覺就像在使用單一數據庫一樣。

1. 主從復制

讓我用不同的表達方式來解釋MySQL的主從復制過程。MySQL的主從復制是依賴于二進制日志(binlog)的技術。二進制日志記錄了MySQL上的所有數據變化,并以二進制形式保存在磁盤上的日志文件中。主從復制的目標是將主庫中的binlog數據傳輸到從庫上,通常這個過程是異步的,也就是說,主庫上的操作不需要等待binlog同步完成。

主從復制的過程如下:首先,從庫連接到主庫時會創建一個I/O線程,用于請求主庫上的binlog數據,并將接收到的binlog信息寫入一個名為"relay log"的日志文件中。與此同時,主庫也會創建一個"log dump"線程來將binlog數據發送給從庫。此外,從庫還會創建一個SQL線程,用于讀取"relay log"中的內容,并在從庫上進行回放,從而實現主從庫的數據一致性。

這種主從復制方式的優點在于,它使用了獨立的"log dump"線程,這是一種異步方式,避免了對主庫的主要數據更新流程產生影響。此外,從庫在接收到binlog信息后,并不會直接寫入從庫的實際存儲中,而是將數據寫入"relay log",這可以避免寫入從庫存儲的延遲,從而減少主從庫之間的數據同步延遲。

圖片圖片

主從復制是一種在性能考慮下實現的數據庫同步機制,其中主庫負責數據寫入,而從庫負責數據讀取。主庫的寫入操作通常不會等待主從同步完成就返回結果,這意味著在極端情況下,如主庫上的binlog數據還未來得及刷新到磁盤時發生磁盤損壞或機器掉電,可能會導致binlog數據丟失,進而引起主從數據不一致的問題。盡管這種情況出現的概率很低,對于互聯網項目來說是可以接受的。

一旦進行了主從復制,就可以實現寫請求只寫主庫,讀請求只讀從庫的策略。這意味著即使寫請求鎖定了表或記錄,也不會影響讀請求的執行。此外,在讀流量較大的情況下,可以部署多個從庫來共同處理讀流量,這被稱為"一主多從"部署方式,可以用來應對高并發讀取流量,比如在您的垂直電商項目中。

此外,從庫還可以用作備份庫,以防止主庫發生故障導致數據丟失。然而,需要注意的是,增加從庫的數量并不是無限制的,因為隨著從庫數量的增加,主庫需要處理更多的IO線程和log dump線程,這可能會對主庫的資源消耗和網絡帶寬造成影響。通常情況下,一個主庫最多可以連接3到5個從庫。

盡管主從復制提供了許多好處,例如負載均衡和容錯性,但它也有一些缺點,包括引入部署復雜性和可能導致主從同步延遲。這種延遲有時會對某些業務產生影響,例如在微博發布中,主從同步延遲可能會影響后續異步操作的正常流程,如將微博信息發送給審核系統。

圖片圖片

這個問題解決的思路有很多,核心思想就是盡量不去從庫中查詢信息,純粹以上面的例子來說,我就有三種解決方案:

  1. 數據冗余方案: 在將消息發送到消息隊列時,不僅發送微博ID,還將隊列處理機所需的完整微博信息一并發送,以避免從數據庫重新查詢數據。這可以確保數據一致性,但可能會增加單條消息的大小,從而增加消息傳輸的帶寬和時間成本。
  2. 緩存方案: 同步寫入數據庫的同時,將微博數據寫入Memcached緩存。這樣,隊列處理機在獲取微博信息時首先嘗試從緩存中獲取,以提高查詢速度和減輕數據庫負擔。這種方法特別適用于新增數據的場景,但在更新數據時需要小心,因為同時更新緩存和數據庫可能導致數據不一致,特別是在并發更新時。
  3. 查詢主庫方案: 在隊列處理機中直接查詢主庫而不是從庫。這是一種可行的方法,但需要謹慎使用,因為如果查詢量很大,可能會給主庫帶來過大的壓力。這種方式適用于查詢量較小且在主庫負載可承受范圍內的情況。

最終,我會傾向于選擇數據冗余方案,因為它相對簡單,但可能會導致消息的大小增加以及消息傳輸的帶寬和時間成本的增加。緩存方案適用于新增數據的情況,但需要小心處理數據一致性。查詢主庫方案是一種可行的備選方案,但需要謹慎使用以避免對主庫造成過大的壓力。

主從同步延遲是一個容易被忽略的問題,特別在排查問題時。有時候,當我們遇到從數據庫中無法獲取信息的奇怪問題時,我們可能會首先懷疑代碼中是否有一些邏輯會導致數據被刪除。但隨著時間的推移,我們又發現之前丟失的數據突然又能夠查詢到,這通常是主從同步延遲導致的問題。因此,我們通常將從庫的數據落后時間作為一個關鍵的數據庫性能指標來監控和設置警報。正常情況下,數據同步延遲應該在毫秒級別,一旦延遲達到秒級別,就需要觸發警報,以及時發現和解決潛在的問題。

2. 如何訪問數據庫

第一類中間件,以淘寶的TDDL(Taobao Distributed Data Layer)為代表,通常以代碼形式嵌入到應用程序內部運行。可以將它視為數據源的代理,它管理著多個數據源,每個數據源對應一個數據庫,可以是主庫也可以是從庫。當應用程序發起數據庫請求時,這種中間件會將SQL語句路由到特定的數據源進行處理,然后返回處理結果。

這種中間件的優點在于它的簡單和易用,而且沒有額外的部署成本,因為它與應用程序一起運行,適合運維能力較弱的小團隊使用。然而,它的缺點在于缺乏多語言支持。目前,這類主流解決方案如TDDL和早期的網易DDB,它們都是用Java開發的,無法支持其他編程語言。另外,版本升級也需要使用方主動更新,相對較為困難。

第二類中間件方案是單獨部署的代理層,代表性的有早期的阿里巴巴開源項目Cobar、基于Cobar開發的Mycat、360開源的Atlas,以及美團開源的基于Atlas開發的DBProxy等等。這些中間件獨立部署在專用服務器上,業務代碼可以像使用單一數據庫一樣與它交互,盡管實際上它內部管理著多個數據源。當應用程序發起數據庫請求時,這些中間件會對SQL語句進行必要的改寫,然后將其發送到指定的數據源。它們通常使用標準的MySQL通信協議,因此可以很好地支持多種編程語言。

由于這些中間件是獨立部署的,因此比較容易進行維護和升級,適合具有一定運維能力的大中型團隊使用。然而,它們的缺點在于所有SQL語句需要跨越兩次網絡:從應用到代理層,然后從代理層到數據源,因此在性能方面可能會有一些損耗。

圖片圖片

這些中間件,對你而言,可能并不陌生,但是我想讓你注意到是,在使用任何中間件的時候一定要保證對于中間件有足夠深入的了解,否則一旦出了問題沒法快速地解決就悲劇了。

需要明確的要點主要有:

  1. 主從復制是一種存儲節點之間相互復制數據的技術,它實現了數據冗余,用于備份和提高橫向擴展性。在使用主從復制時,需要權衡一致性和寫入性能。如果要確保所有從節點都成功寫入,寫入性能可能會受到影響。如果只寫入主節點并立即返回成功,從節點可能出現數據同步失敗的情況,導致主從不一致。在互聯網項目中,通常更注重性能而不是強一致性。
  2. 主從復制的延遲問題是一個關鍵的監控指標,可能會導致無法立刻讀取數據的問題。很多奇怪的讀取不到數據的情況可能與主從延遲有關。因此,在遇到這類問題時,首先要考慮檢查主從延遲的數據。
  3. 業界存在多種方案來屏蔽主從復制后數據庫訪問的細節,使開發人員能夠像訪問單一數據庫一樣使用它們。這些方案包括嵌入應用內部的解決方案(如TDDL、Sharding-JDBC)和獨立部署的代理方案(如Mycat)。不同的方案適用于不同的場景和需求。

這種思想和技術在許多存儲組件中都有應用,如Redis使用主從復制實現讀寫分離,Elasticsearch中的索引分片可以被復制到多個節點,HDFS中的文件會被復制到多個DataNode。盡管不同組件對復制的一致性和延遲要求不同,但這種設計思想是通用的,對于理解和學習其他存儲組件非常有幫助。

責任編輯:武曉燕 來源: 二進制跳動
相關推薦

2024-11-14 08:19:59

數據庫優化數量級

2024-03-05 10:03:09

Python架構系統

2024-10-08 11:21:11

2017-11-02 08:54:13

數據存儲架構

2022-09-09 08:41:43

Netty服務端驅動

2024-12-04 13:52:30

2021-05-24 10:55:05

Netty單機并發

2021-06-17 09:32:39

重復請求并發請求Java

2019-12-13 08:52:48

高并發系統限流

2023-11-30 10:13:17

TensorRT架構

2019-02-27 09:46:05

數據庫架構并發

2021-08-02 09:01:05

MySQL 多版本并發數據庫

2018-10-22 13:23:29

MySQL主從延時線程

2024-11-15 09:54:58

2022-02-23 09:17:09

數據庫分離變更

2021-02-22 11:03:25

大數據大數據平臺架構

2020-09-15 18:46:54

數據平臺Lambda架構

2019-07-01 15:40:53

大數據架構流處理

2017-11-16 21:21:18

DevOps測試軟件開發

2022-08-05 08:40:37

架構
點贊
收藏

51CTO技術棧公眾號

在线国产情侣| 在线永久看片免费的视频| 亚洲一区二区三区在线免费| 亚洲国产人成综合网站| 久久久99国产精品免费| 最近中文字幕在线观看视频| 欧美韩日精品| 亚洲丝袜在线视频| wwwww在线观看| 91精品店在线| 亚洲成人av一区二区| 亚洲v国产v| www.国产福利| 欧美成人精品欧美一级私黄| 欧美自拍一区| 91精品国产综合久久久蜜臀图片| 人妻熟妇乱又伦精品视频| 久久精品视频观看| 91麻豆蜜桃一区二区三区| 国产欧美日韩免费看aⅴ视频| 天天操天天射天天爽| jiujiure精品视频播放| 亚洲国产婷婷香蕉久久久久久 | 91国内在线| 久久久精品欧美丰满| 国产精品大全| 国产农村老头老太视频| 久久久久久黄| 国内精久久久久久久久久人| 精品国产视频一区二区三区| av网站在线播放| 玖玖精品一区| 色综合久久综合网欧美综合网| 久久久久久久久久久久久国产| 黄色在线网站| 97精品超碰一区二区三区| 亚洲精品免费av| 伊人免费在线观看| 老妇喷水一区二区三区| 97成人精品区在线播放| 欧美日韩在线观看免费| 久久精品青草| 久久精品国产69国产精品亚洲| 久久精品视频18| 综合国产视频| 亚洲乱码一区二区| 国产麻豆天美果冻无码视频| 精品国产导航| 亚洲激情视频网| 国产精品成人99一区无码| 视频精品二区| 日韩欧美国产电影| 国产成人av免费观看| 日本超碰一区二区| 欧美va在线播放| 丰满人妻一区二区三区大胸| 亚洲精品观看| 精品国产乱码久久久久久久| 中文字幕一区二区三区人妻在线视频| 欧美色图一区二区| 91国拍精品国产粉嫩亚洲一区| 91国模大尺度私拍在线视频| 精品www久久久久奶水| 另类图片综合电影| 欧美性欧美巨大黑白大战| 簧片在线免费看| 欧美韩国日本| 欧美一级夜夜爽| 91亚洲一线产区二线产区 | 91麻豆精品国产91久久久久久| 校园春色 亚洲色图| 欧美黄色a视频| 欧美一区二区三级| 日本wwww色| 久久a爱视频| 亚洲欧美国产制服动漫| 国产主播av在线| 一级毛片免费高清中文字幕久久网| 欧美成人午夜激情| 四虎成人精品永久免费av| 亚洲在线电影| 国产日产欧美a一级在线| 国产视频在线一区| 97久久精品人人做人人爽50路| 欧洲精品码一区二区三区免费看| 在线观看免费高清完整| 一区二区三区欧美久久| 一区二区传媒有限公司| 国产精品伦一区二区| 欧美大片在线观看一区| 国产全是老熟女太爽了| 欧美mv日韩| 97视频国产在线| 亚洲天堂999| 成人av在线一区二区| 日韩av一区二区三区在线观看 | 97国产精品久久| 成年人视频免费| 国产精品18久久久久久久网站| 精品高清视频| 成人黄色网址| 色诱视频网站一区| 亚洲区 欧美区| 午夜a一级毛片亚洲欧洲| www.日韩视频| www亚洲视频| 国产风韵犹存在线视精品| 欧美日韩国产综合在线| 日韩三级免费| 欧美日韩不卡在线| 瑟瑟视频在线观看| 午夜精彩国产免费不卡不顿大片| 国产精品高潮呻吟久久av无限| 国产成人三级在线播放| 国产欧美va欧美不卡在线| 男人插女人视频在线观看| 性欧美video另类hd尤物| 精品亚洲aⅴ在线观看| 欧美成人三级视频| 蜜桃av一区二区三区| 蜜桃91精品入口| 美女航空一级毛片在线播放| 欧美精品xxxxbbbb| 蜜臀久久99精品久久久久久| 亚洲欧美一级二级三级| 成人免费看吃奶视频网站| 成年午夜在线| 一本一本大道香蕉久在线精品 | 婷婷激情四射五月天| 欧美韩一区二区| 欧美激情a在线| 国产老妇伦国产熟女老妇视频| 久久久精品蜜桃| 成年人免费在线播放| 欧美顶级毛片在线播放| 91国内揄拍国内精品对白| 亚洲爱情岛论坛永久| 亚洲女爱视频在线| 手机av在线网站| 亚洲欧美综合久久久| 成人日韩在线电影| 快射av在线播放一区| 欧美日韩国产在线播放网站| 日本高清黄色片| 日本欧美一区二区| 五月天丁香综合久久国产| 四虎4545www国产精品| 亚洲日本欧美中文幕| 欧美人一级淫片a免费播放| 久久男人中文字幕资源站| 国产视频九色蝌蚪| 中文有码一区| 国产精品高潮呻吟久久av无限| 国产精品一区二区三区四区色| 在线看一区二区| 亚洲色图欧美色| 国产真实精品久久二三区| 国产精品久久成人免费观看| 日韩一二三区| 午夜精品三级视频福利| 青青青草原在线| 在线精品亚洲一区二区不卡| 亚洲a∨无码无在线观看| 国产在线一区观看| 97超碰国产精品| 欧美有码在线| 国产精品久久久久久影视 | 亚洲特级片在线| 久久精品无码一区二区三区毛片| 欧美激情1区2区| 久久精品国产第一区二区三区最新章节| 午夜欧美激情| 日韩中文在线中文网三级| 精品国产九九九| 五月天欧美精品| 精品熟妇无码av免费久久| 国产精品99久久久久| 欧美国产亚洲一区| 2018国产精品| 99久久亚洲精品| 国产精品久久久久av福利动漫| 色偷偷色偷偷色偷偷在线视频| 亚洲美女自拍视频| 国产又粗又大又黄| 香港成人在线视频| 黄色国产在线播放| 成人精品免费视频| 黄色成人免费看| 国精品一区二区| 日韩精品极品视频在线观看免费| 97精品资源在线观看| 97色在线播放视频| 久久77777| 亚洲久久久久久久久久| 国产乱色精品成人免费视频| 亚洲成人av免费| 很污很黄的网站| 91亚洲精品久久久蜜桃| 天天干天天色天天干| 亚洲在线免费| 日韩精品一区二区三区电影| 亚洲裸色大胆大尺寸艺术写真| 国产一区视频在线| 成人性生活视频| 99视频超级精品| 草b视频在线观看| 色婷婷热久久| 欧美精品一区三区在线观看| 日韩一区网站| 国产综合在线观看视频| 亚洲黄色免费看| 不卡av日日日| 国产特黄在线| 国产视频在线观看一区二区| 精品人妻一区二区三区浪潮在线 | 国产伦精品一区二区三区在线播放 | 亚洲AV成人无码精电影在线| 91麻豆精品在线观看| av在线天堂网| 韩国一区二区在线观看| 哪个网站能看毛片| 亚洲调教视频在线观看| 制服丝袜综合日韩欧美| 九九免费精品视频在线观看| 国产精品久久久久免费| 国产一区二区三区精品在线观看| 国产精品久久久| 亚洲精品成人图区| 78m国产成人精品视频| 欧美人与性动交α欧美精品图片| 亚洲天堂成人在线| 美州a亚洲一视本频v色道| 精品日韩成人av| 国产欧美久久久| 欧美久久一区二区| 一级全黄裸体免费视频| 欧美撒尿777hd撒尿| 亚洲精品男人的天堂| 欧美日韩中文字幕在线视频| 日韩av在线播放观看| 亚洲永久免费视频| 久久精品视频国产| 香蕉乱码成人久久天堂爱免费| 精品少妇久久久| 亚洲大型综合色站| 日韩av电影网址| 五月激情六月综合| 五月激情六月丁香| 一本色道久久综合狠狠躁的推荐| 欧美性猛交bbbbb精品| 狠狠躁夜夜躁人人躁婷婷91| 久久久久99精品成人片我成大片| 色婷婷久久综合| 中文人妻熟女乱又乱精品| 91福利在线观看| 91国产精品一区| 91精品国产欧美一区二区成人| 国产精品一级视频| 欧美成人bangbros| 手机在线观看免费av| 亚洲免费精彩视频| av在线播放网| 久久久成人精品视频| 羞羞的网站在线观看| 91国产精品91| 97久久网站| 91麻豆蜜桃| 麻豆精品av| 欧洲视频一区二区三区| 色综合蜜月久久综合网| wwwjizzjizzcom| 国产欧美日本| 日本人69视频| 成人精品鲁一区一区二区| 国产熟妇久久777777| 国产精品热久久久久夜色精品三区| 久久高清内射无套| 动漫精品一区二区| 中文字幕丰满人伦在线| 日韩一级高清毛片| 人操人视频在线观看| 中文字幕一区日韩电影| 羞羞的视频在线看| 国产成人久久久| 国产日韩一区二区三免费高清| 国产精品欧美久久| 成人无号精品一区二区三区| 玖玖精品在线视频| 亚洲一区二区三区免费在线观看| 日本激情视频在线播放| 成人深夜视频在线观看| 久久丫精品忘忧草西安产品| 一区二区三区精品久久久| 久久精品视频5| 日韩欧美视频在线| 国产粉嫩一区二区三区在线观看 | 亚洲av鲁丝一区二区三区| 红桃av永久久久| 国产精品久久综合青草亚洲AV| 亚洲国产97在线精品一区| av影片在线看| 欧美在线视频a| 视频免费一区二区| 亚洲三区在线| 国产婷婷精品| 午夜诱惑痒痒网| 国产精品全国免费观看高清 | 欧美三级黄网| 欧美做受高潮电影o| 日韩一级淫片| 影音先锋在线亚洲| 久久久久.com| 99re这里只有| 樱桃视频在线观看一区| 国产乡下妇女三片| 日韩毛片在线看| 色a资源在线| 成人午夜一级二级三级| 精品日本12videosex| 精品国产一区三区| 国产成人aaa| 日韩成人短视频| 欧美亚日韩国产aⅴ精品中极品| 天堂成人在线观看| 欧美激情精品久久久久久免费印度| 日韩毛片网站| 亚洲国产精品毛片| 麻豆成人在线| 给我看免费高清在线观看| 亚洲午夜一二三区视频| 国产成人三级一区二区在线观看一| 日韩有码片在线观看| 奇米777日韩| 欧美亚州在线观看| 美日韩精品视频| 中文字幕一二三四区| 粉嫩老牛aⅴ一区二区三区| 日韩一区免费视频| 欧美极品xxxx| 2021年精品国产福利在线| 国产在线无码精品| 国产精品资源网| 国模无码国产精品视频| 欧美一区二区三区思思人| 日本三级在线视频| 成人h视频在线观看播放| 国产精品99久久| 日韩av片免费观看| 一区二区三区免费| 俄罗斯嫩小性bbwbbw| 97精品一区二区视频在线观看| 精品国产乱子伦一区二区| 日韩精品―中文字幕| 久久久精品免费网站| 精品乱码一区内射人妻无码 | 夫妇交换中文字幕| 欧美在线一区二区三区| 成人免费一区二区三区视频网站| 国产精品第一第二| 色一区二区三区四区| 91香蕉国产线在线观看| 亚洲综合在线观看视频| 色婷婷av一区二区三| 91精品国产精品| 精品免费一区二区| 玖玖爱视频在线| 一区二区在线免费观看| 天天操天天插天天射| 日韩暖暖在线视频| 婷婷色综合网| 欧美做受高潮中文字幕| 日韩欧美在线播放| 91这里只有精品| 91成人免费观看| 国产午夜久久| 国产在线观看免费视频软件| 日韩一二三四区| 自拍视频在线看| 在线看无码的免费网站| 国产成人av资源| 亚洲熟妇无码乱子av电影| 中文字幕日韩精品在线| 91精品久久久久久综合五月天| www黄色日本| 亚洲素人一区二区| 欧美熟妇另类久久久久久不卡| 国产精品99导航| 欧美日韩国产在线一区| wwwwww日本| 日韩欧美一级二级三级| 欧美xx视频| 青青草综合视频| 久久久av毛片精品| 精品人妻一区二区三区麻豆91| 青青a在线精品免费观看| 亚洲国产精品久久久天堂| 99久久免费看精品国产一区| 欧美日韩精品免费观看视频| 丁香花电影在线观看完整版| 亚洲国产高清国产精品|