摘要:且過多的從服務器,當業務量大時對主服務器的網卡也是一定的挑戰。我們可以通過對集群的監控信息來了解是什么影響了數據庫性能。
關于數據庫性能的故事
面試時多多少少會講到數據庫上的事情,“你對數據庫的掌握如何?”,什么時候最考驗數據庫的性能,答應主要方面上講就是大數據量的讀寫時,而電商類的大促活動就是考驗各自的數據庫性能的時候啦。
對于web服務器而言,數據量大時,我們可以簡單的通過橫向擴展來減少單個服務器的負擔,但是對于數據庫服務器來說就沒有那么簡單了,他們不可能做到輕易的橫向擴展,這樣也違背了數據庫的完整性與一致性的原則,那么我們的數據庫架構該如何搭建呢?
對于大促類活動而言,不管是產品多好、策劃多成功,如果沒有穩定的數據庫及服務器環境,則這所謂的一切都將是一場空呀。
數據庫架構案例如圖所示,主從服務器之間沒有任何主從復制組件,即當主服務器出現了故障,很難進行主服務器的切換,這需要DBA在從服務器中選擇數據最新的從服務器將其提升為主服務器并同步其他從服務器,這個過程的時間成本也是非常沉重的。
且過多的從服務器,當業務量大時對主服務器的網卡也是一定的挑戰。
我們可以通過對集群的監控信息來了解是什么影響了數據庫性能。
答應其實是肯定的,一般情況下主要是QPS與TPS、并發量(同一時間處理的請求的數量,避免和同時連接數混淆)、磁盤IO、讀操作過于高
這里有個建議:最好不要在主庫上數據備份,起碼在大型活動前要取消這類計劃、
影響數據庫的因素sql查詢速度 服務器硬件 網卡流量 磁盤IO
超高的QPS和TPS
風險:效率底下的SQL(QPS:每秒鐘處理的查詢量)
大量的并發和超高的CPU使用率
風險:大量的并發(數據庫連接數被占滿(max_connections默認100))
風險:超高的CPU使用率(因CPU資源耗盡而出現宕機)
磁盤IO
風險:磁盤IO性能突然下降(使用更快的磁盤設備)
風險:其他大量消耗磁盤性能的計劃任務(調整計劃任務)
網卡流量
風險:網卡IO被占滿(1000Mb/8=100MB)
如何避免無法連接數據庫的情況:
1、減少從服務器的數量
2、進行分級緩存
3、避免使用“select * ”進行查詢
4、分離業務網絡和服務器網絡
如果本文對你有所幫助,歡迎關注本人技術公眾號,謝謝。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/17785.html
閱讀 1619·2021-11-11 10:59
閱讀 2624·2021-09-04 16:40
閱讀 3650·2021-09-04 16:40
閱讀 2979·2021-07-30 15:30
閱讀 1615·2021-07-26 22:03
閱讀 3164·2019-08-30 13:20
閱讀 2225·2019-08-29 18:31
閱讀 439·2019-08-29 12:21