1. 程式人生 > >滴滴Leader面覆盤(不好意思,再次插播,最近的優質公司我都會做覆盤)

滴滴Leader面覆盤(不好意思,再次插播,最近的優質公司我都會做覆盤)

之前的一二面都是屬於電話面試的範疇,沒有什麼出圈的問題,所以比較順利,整體上不外乎對java基礎的考察,資料結構的運用,兩個事務之間的對比(為什麼要選用這個而不是那個,以及這樣的會給你的專案帶來哪些上面的好處,自己的專案關於用過的技術一定要爛熟於心),然後進入正題:

1.首先讓我介紹一個自己最拿手的專案,然後我說的時候進行了打斷,詢問搜尋模組是怎樣實現的,然後談了一下關於solr以及它後續建立索引庫的東西,比如說我要查詢一個英國短毛貓,我輸入了英短,怎麼樣獲得我所能查到的英國短毛貓的一些品種,資料一些相關的東西(此處非模糊查詢),然後提了一下solr與elasticsearch的多維度分析比較。

2.簡單提了一下索引相關的,mysql的優化,具體是怎麼樣做的,比如說分庫分表,談了談水平分表垂直分表怎麼分,分庫的理解好像談的和leader有一些出入(感覺面試官表情不對勁時候,千萬想想是不是說的東西方向出問題了),接下來就是慢查詢之類的資料庫通用優化,這裡如果是併發專案要對清楚自己專案的tps、qps、pv等等資料做到心中有數,比如說優化前多少,優化後又是多少巴拉巴拉,效能提升最好有清晰的數值提現,比如說提升了2.2%這樣子。

3.接著就開始繼續說專案,然後就說到了叢集容災方面的問題,比如是否是叢集呀,怎麼處理redis資料一致性這些,然後就問了一下如果說master伺服器宕了,下面的slave該怎麼辦,這裡提到了哨兵模式,會檢測並提一個slave上來做新的master,然後就問了一下應該提哪一個巴拉巴拉。。。。

之後給了一到easy的演算法題,從一個排好序陣列中找到某個數存不存在,返回它的index,[1,2,3,4,7,8,8,9],這樣子有重複數的陣列,我的思路是二分查詢解決的,各位有好的想法可以探討一下。

最後就是客套話問了還有什麼想讓他了解的東西,一些要問的問題,就沒什麼了,leader關注你的問題解決能力,和錯誤的預防處理能力,還是要下一點功夫在上面的。