更新時間:2022-05-12 10:18:14 來源:動力節點 瀏覽1766次
分布式高并發的處理方法有哪些?動力節點小編來告訴大家處理高并發的六種方法。
1.系統拆分,將一個系統拆分為多個子系統,用dubbo來搞。然后每個系統連一個數據庫,這樣本來就一個庫,現在多個數據庫,這樣就可以抗高并發。
2.緩存,必須得用緩存。大部分的高并發場景,都是讀多寫少,那你完全可以在數據庫和緩存里都寫一份,然后讀的時候大量走緩存不就得了。畢竟人家redis輕輕松松單機幾萬的并發啊。沒問題的。所以你可以考的慮考慮你的項目里,那些承載主要請求讀場景,怎么用緩存來抗高并發。
3.MQ(消息隊列),必須得用MQ。可能你還是會出現高并發寫的場景,比如說一個業務操作里要頻繁搞數據庫幾十次,增刪改增刪改,瘋了。那高并發絕對搞掛你的系統,人家是緩存你要是用redis來承載寫那肯定不行,數據隨時就被LRU(淘汰掉最不經常使用的)了,數據格式還無比簡單,沒有事務支持。所以該用mysql還得用mysql啊。那你咋辦?用MQ吧,大量的寫請求灌入MQ里,排隊慢慢玩兒,后邊系統消費后慢慢寫,控制在mysql承載范圍之內。所以你得考慮考慮你的項目里,那些承載復雜寫業務邏輯的場景里,如何用MQ來異步寫,提升并發性。MQ單機抗幾萬并發也是ok的。
4.分庫分表,可能到了最后數據庫層面還是免不了抗高并發的要求,好吧,那么就將一個數據庫拆分為多個庫,多個庫來抗更高的并發;然后將一個表拆分為多個表,每個表的數據量保持少一點,提高sql跑的性能。
5.讀寫分離,這個就是說大部分時候數據庫可能也是讀多寫少,沒必要所有請求都集中在一個庫上吧,可以搞個主從架構,主庫寫入,從庫讀取,搞一個讀寫分離。讀流量太多的時候,還可以加更多的從庫。
6.solrCloud:
SolrCloud(solr 云)是Solr提供的分布式搜索方案,可以解決海量數據的 分布式全文檢索,因為搭建了集群,因此具備高可用的特性,同時對數據進行主從備份,避免了單點故障問題。可以做到數據的快速恢復。并且可以動態的添加新的節點,再對數據進行平衡,可以做到負載均衡:
以上就是關于“分布式高并發的處理方法”介紹,大家如果想了解更多相關知識,不妨來關注一下動力節點的Java在線學習,里面的課程內容從入門到精通,細致全面,比較適合沒有基礎的小伙伴學習,希望對大家能夠有所幫助哦。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習