什麼是 Load Balancer
前言
現在也是個工作第二年的後端了,是時候該學一些系統設計的知識
系統設計顧名思義是指設計軟體系統的過程,例如說我們要設計一個大型社交網站
那我們可能就會需要非常非常多的技術,包含:用什麼語言去寫Server、使用什麼樣的Database、如果說系統Loading太大該怎麼辦等等,族繁不及備載。
要考量的點實在太多了,而且也沒有所謂的正確答案,端看能不能有效解決問題
能夠利用手上會的知識,去整合並且設計系統
另外面試的時候不會要你真的設計一個超級完整的系統,每個細節都要做到
不會,因為時間不夠,而且要你在臨場想出來也是強人所難,別人花了好幾次會議好幾個月甚至好幾年才構思出來的系統,要你在45~60分鐘內想出來,屬實過分。
所以我們在面試的時候必須持續溝通,詢問面試官說,這邊的需求,你想怎麼做等等。
系統設計面試都是開放式的問題,沒有標準答案,所以要慢慢限縮問題的範圍,而且實際面對需求或客戶,本來也就是這樣,每個人的認知都不同,你的大跟我的大應該是不同的。這時候如果沒有釐清需求,直接給他做下去,相信我87%痛苦的都是自己。
好了,我們先來介紹什麼是Load Balancer吧