Re: [請益]高流量網站和資料結構

看板Soft_Job作者 (EasoN)時間2年前 (2021/08/21 15:14), 2年前編輯推噓16(1601)
留言17則, 16人參與, 2年前最新討論串2/7 (看更多)
※ 引述《ntpuisbest (阿龍)》之銘言: : 先自承是非本科的新人 : 最近看了版上的討論串,覺得自己的確實是 : 沒有CS基礎的API工程師,以前在學校修過資料結構 : 但是只有一些很粗糙的觀念 : 像是hash function因為返回的是index,所以在查找資料上非常快 : 目前還在惡補基礎的DS,至於OS和計算機組織就真的完全沒概念了 : 每次看到thread,大概就止步於看到那種for loop 交叉印出不同函數的例子 : 自己稍微爬文下來,不太懂如果要往高流量網站的設計邁進 : 該怎麼去活用那些知識 : 我爬文的結果有點像是 : 如果一張資料庫數量超過百萬 : 那這樣就要想辦法把資料分成不同的表格 : 然後這時hashmap 就可以幫你找到不同的表格這樣? : 爬文大概看到以下方法 : 1.建立多個File server , 寫hash function 將上傳的圖片及影音平均分散到File server : 上的Folder : 2.Query優化、索引優化及將負載重的table做反正規化以減少資料庫負荷 : 建立Master /Slave 資料庫,分散Master主機loading,將讀寫資料庫動作分離, : Matster DB只負責被寫入及複製,Slave DB負責被讀取 : 3.可能還有一些cache之類的 : 比如說像是搶票網站好了 : https://imgur.com/TON1Nid
: 看到有人說可以這樣解決 : 那像這樣的知識,是不是要想辦法進去大公司才有辦法學到 : 比較難在網路上,像是一般的前後端CRUD一樣容易獲得? : 另外想問說,如果有一個API,他是getallemployee好了,打了url就要返回所有的員工 : 資料,這是如果是高併發高流量的網站設計 : 該怎麼活用資料結構,才能讓網站不要LAG 這是常用場景,已知問題,所以有很多解決方案。 其中一種就是類似Twtiiter的Push架構,每次新增一個員工就把資料寫進cache&DB 然後API打進來先去問cache要資料,然後cache多設幾個組成一個cluster, 避免單點失效...這些知識都可以從下面推薦的網站中學到,不用做過也略知一二 : 還是說這可能跟資料結構比較無關,我要去補充其他知識才會知道 : 如果可以的話,希望前輩們可以分享哪些關鍵字或是網站有sample code可以查詢 System Design Primer https://github.com/donnemartin/system-design-primer InfoQ https://www.infoq.cn/topic/architecture Grokking the System Design Interview https://www.educative.io/courses/grokking-the-system-design-interview HiredInTech https://www.hiredintech.com/classrooms/system-design/lesson/52 System Design Interview https://github.com/checkcheckzz/system-design-interview Awesome Scalability https://github.com/binhnguyennus/awesome-scalability SYSTEM DESIGN INTERVIEW- AN INSIDER'S GUIDE https://systeminterview.com/ 另外我推薦分散式系統聖經 Design Data-Intesive Application 就這些內容,全看完不可能 但掌握幾個大方向你的系統設計能力就不會差 -- 學弟名言: 讀書是三小 我只知道毒玉 延畢是三小 我只知道炎玉 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.57.146.63 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1629530059.A.B0A.html ※ 編輯: drajan (61.57.146.63 臺灣), 08/21/2021 15:19:09

08/21 15:20, 2年前 , 1F
分享 推個
08/21 15:20, 1F

08/21 16:42, 2年前 , 2F
來看看
08/21 16:42, 2F

08/21 17:01, 2年前 , 3F
推!
08/21 17:01, 3F

08/21 17:21, 2年前 , 4F
謝謝分享
08/21 17:21, 4F

08/21 17:41, 2年前 , 5F
感謝分享這些資源,thx!
08/21 17:41, 5F

08/21 18:16, 2年前 , 6F
111
08/21 18:16, 6F

08/21 19:22, 2年前 , 7F
ty
08/21 19:22, 7F

08/21 19:28, 2年前 , 8F
11
08/21 19:28, 8F

08/21 23:47, 2年前 , 9F
推感謝
08/21 23:47, 9F

08/22 01:21, 2年前 , 10F
謝謝分享
08/22 01:21, 10F

08/22 02:34, 2年前 , 11F
推DDIA 每次重看都有不同收穫 聖經啊
08/22 02:34, 11F

08/22 03:02, 2年前 , 12F
good
08/22 03:02, 12F

08/22 06:18, 2年前 , 13F
08/22 06:18, 13F

08/22 08:43, 2年前 , 14F
08/22 08:43, 14F

08/22 16:49, 2年前 , 15F
感謝分享資源
08/22 16:49, 15F

08/23 03:50, 2年前 , 16F
08/23 03:50, 16F

08/23 08:57, 2年前 , 17F
08/23 08:57, 17F
文章代碼(AID): #1X8AVBiA (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1X8AVBiA (Soft_Job)