大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了

Android我愛死你了 2021-09-20 04:41:24 阅读数:423

大型 均衡 搞定 kafka 一篇

也有用jwt 和redis會話服務器相結合的方案,這樣可以解决jwt的缺點問題。這裏老顧就不多講了。

中型階段

這個階段是業務發展最快的階段,業務的多變性,以及用戶流量已經到了一定的規模,要考慮系統的可用性了,數據量也有一定的規模。這時是系統進入促步改造的時期

業務微服務化

為了保證業務的多變,我們需要把各自業務進行解耦,這邊需要的技術Dubbo或Spring Cloud微服務框架。這兩個框架都支持微服務集群部署,以及調用方的負載均衡。如下圖的訂單微服務會部署幾個訂單微服務,形成集群,web服務調用方會做負載均衡的調用。這邊就涉及到了第二個負載均衡的場景,是利用微服務框架自身的功能
大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端

分布式緩存

活躍用戶的增大,會對DB數據庫的訪問壓力過大,這個時候會考慮增加緩存層來幫助DB减壓。在進行分布式緩存進行規劃時,會用到redis集群作為緩存。redis集群方案中利用哈希槽的方式,達到了緩存數據量的拆分,以及負載均衡。這個就是第****三個負載均衡場景
大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_Java_02

nginx集群

用戶並發到了幾千的時候,就要考慮到nginx的高可用,雖然nginx的性能比較高,但也經不起量大啊。利用LVS來實現nginx的高可用和負載均衡這個又是一個負載均衡場景
大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_Java_03

大型階段

此階段的業務已經趨於穩定,數據量也越有越大,用戶活躍也很大;業務複雜度很高,已經業務流程多變,市場規模發展到全國,有多機房多區域的部署的需求。公司規模大了以後,網絡安全就顯得尤為重要。系統一定要保證穩定

分庫分錶

數據庫單錶如果超過300多萬條記錄時,就要考慮到分錶;數據庫的IO操作已經一直處於高負荷狀態,就可以考慮把業務進行拆分到不同的DB中,以及數據庫的主從設計實現讀寫分離,設計來降低DB負載和高可用。

分庫分錶中可以采用兩種方案,一種代理層方案,如:MyCat框架;一種是客戶端實現,如sharding-jdbc。這個又是一種在數據庫層的負載均衡場景

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端_04

消息中間件

業務的複雜度高,需要很好的拆分業務,更進一步的業務解耦,以及高並發下限流會用到消息中間件,如:RocketMQ,RabbitMQ。

還有分布式事務中,為了保證最終一致性,也會用到消息中間件。

消息中間件是天生的集群化,保證消息中間件的高可用以及負載均衡,有這個是消息隊列層的負載均衡場景。
大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端_05

最後總結我的面試經驗

2021年的金三銀四一眨眼就到了,對於很多人來說是跳槽的好機會,大廠面試遠沒有我們想的那麼困難,擺好心態,做好准備,你也可以的。

另外,面試中遇到不會的問題不妨嘗試講講自己的思路,因為有些問題不是考察我們的編程能力,而是邏輯思維錶達能力;最後平時要進行自我分析與評價,做好職業規劃,不斷摸索,提高自己的編程能力和抽象思維能力。

 CodeChina開源項目:【一線大廠Java面試題解析+核心總結學習筆記+最新講解視頻】

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端_06

BAT面試經驗

實戰系列:Spring全家桶+Redis等

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端_07

其他相關的電子書:源碼+調優

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_Java_08

面試真題:

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_後端_09

大型網站演變中的負載均衡場景,搞定kafka看這一篇就够了_程序員_10

版权声明:本文为[Android我愛死你了]所创,转载请带上原文链接,感谢。 https://gsmany.com/2021/09/20210920044124196e.html