58 一面 40min 挂
自我介紹
- 離職原因?為什麼這個時候離職?
- http1.1 http1.0 http2.0 差別
- redis長度過長怎麼優化?哪個api,資料量超過多少效率會變低?
- MySQL做過哪些優化?覆寫索引?limit兩個參數差別?MySQL分頁優化的其他方法
- concurrenthashmap如何保證線程安全,說說你的了解
- arraylist linkedlist 使用場景
- 本地線程和守護線程的差別,Thread.setDemon();
- 線程狀态
- 線程池參數?線程池為什麼用new的不好?
- 項目:前台如何調背景接口?rpc?主服務項目多大
- 有什麼問我的?
- 目前薪資 期望薪資?
- 鼓勵
位元組跳動 一面 78min 過
自我介紹
- 你對全棧的了解
- 離職原因,為什麼這個時間離職
- 技術上沒有學到東西嗎?
- 哪塊兒比較熟?
- synchronized?mute lock怎麼實作的
- Java看過哪些源碼?線程池好處?多創線程就怎麼了?壓測的時候建立幾千個線程才幾毫秒這點兒開銷有必要節省嗎?記憶體開銷,時間開銷?線程池參數,execute執行流程,work?沒有工作會删除嗎?睡眠狀态?idl怎麼配置的?最大線程滿了之後?
- 有哪些Map?還有啥Map?用的jdk幾?說一下HashMap資料結構,put值散列沖突怎麼解決?連結清單樹化轉移數量?為什麼是8為什麼是6??為什麼數組要是二次幂?怎麼擴容的?擴容rehash的流程?
- concurrentHashMap的散列流程?concurrentHashMap怎麼實作的線程安全?CAS什麼意思,怎麼實作的?Unsafe怎麼實作?concurrentHashMap什麼時候用到CAS?并發情況下兩個線程都到之後怎麼插入的?初始化的時候兩個線程都檢測到需要初始化了,然後怎麼做的?
- 算法題 coins硬币 / 一句都沒寫出來,做了20min白卷交的,(我:該用動态規劃做,但不知道怎麼下手了,面試官:轉移方程怎麼寫?我:對不起,忘記了)
- 怎麼學習的?
- 最常看的部落格?網站?
- 有什麼好書?技術和非技術都行
- 怎麼看待學習和看書?
-
你有什麼問我的?
o 我進入您的部門哪方面需要提高?
o 大概什麼時候出結果?
位元組跳動 二面 30min 沒算法題 挂
「忘記錄音了,隻記得這些了」
自我介紹
- 為什麼離職?
- 你覺得自己有什麼可以拿出來講的點嗎?
- 你做的主要工作有什麼?最複雜的一個業務講一下流程?
- 并發度提100倍有哪些優化的點?
- 限流怎麼做的?令牌桶的算法實作?限流還有哪些方式?
- 接口450ms 優化到了 360 ms怎麼優化的?
- tomcat隻是修改了一下參數嗎?
- redis叢集部署方式?主從和哨兵的差別?
- 緩存方式還有哪些?
- redis資料結構,string底層實作,跳表複雜度?
- redis使用過程中出現過變慢的情況嗎?
- nginx後面的形态是怎麼樣的?
- 網關層還了解什麼技術?
- 對自己的定位,技術發展?
- 别人對你的評價?
- 你有什麼問我的?
流利說 一面 40min 過
自我介紹,項目 20 min
- 單點故障怎麼解決?添加節點自動化還是手動?提升系統負載能力怎麼測的??
- http 1.0 1.1差別?
- 并發并行差別?
- 并發數達到了400多怎麼做的優化?
- 緩存穿透?其他請求如何知道值已經到緩存中了?
- 鎖怎麼做的?分布式鎖怎麼做的?放過去的請求失敗或者延遲大量請求阻塞在那裡怎麼辦?
- 日志記錄子產品講一下?日志統一記錄?
- 可用性怎麼保證的?報警怎麼實作的?報警的名額隻是健康檢查?
- 服務之間的互相調用有涉及到嗎?分布式鍊路追蹤如果某個服務調用出問題了,怎麼排查問題?
- https協定目标源是靜态檔案,按回車整個請求鍊路?http靜态檔案和接口請求的差別?對CDN有了解嗎?https加密是對稱還是非對稱?
- SQL調優你會怎麼做?索引的資料結構?MYSQL的事務有哪些?比較常用的是哪些?
- 常用的Linux指令一直說,直接說指令的名字
- Java轉golang怎麼看?
-
你想問我?
14号線下進行後續3輪面試。「已拒」
百度 一面 50min 過
自我介紹
- 關鍵SQL優化怎麼優化的?為什麼性能不好?主鍵必須有嗎?資料索引密集度很差的話,你的優化意義不大吧?
- MySQL有哪幾種索引?聚簇索引和輔助索引的差別?索引資料結構?為什麼用B+樹?
- MVCC?版本号怎麼變化的?更新的資料的時候怎麼确定版本的?幻讀怎麼解決的?
- 一個SQL怎麼走的索引?MYSQL會怎麼選的?MySQL哪些不正規的寫法無法命中索引?
- MySQL有哪幾種日志?redo log主要有什麼用?送出之後100%落盤嗎?為什麼MySQL要寫到redo log buff記憶體?
- redis一般怎麼用的?為什麼選擇用redis?為什麼redis快呢?
- redis幾種資料類型?redis string的底層實作?
- 分布式鎖用過嗎?說說怎麼用的?用的哪個指令?
- redis 底層 hash 表擴容機制說一下?
- 類加載過程?常用的類加載器?調用順序?為啥雙親委派?
- mq重複消費,丢消息的問題怎麼解決?redis的list有哪幾種操作?布隆過濾器特點?緩存穿透?
- static關鍵字的用法?
- 用到的資料結構那些?Map put的流程講下
- kafka,zookeeper了解嗎?
- ThreadLocal用過嗎?不remove掉會有什麼問題?
- 口述算法:之字列印
- 有什麼問題?
百度二面 68min 過
自我介紹
- 哪個項目時間長一些,兩個項目技術棧都講一下,詳細介紹一下***項目具體做了哪些事情,一些查詢次元的接口?如果現在讓你開發一些接口,你怎麼做接口隔離。表的數量?表資料量?
- SQL優化介紹一下做了哪些?怎麼替換?
- 限流怎麼做的?解釋一下
- 介紹一下另一個平台。按剛才的介紹方式。
- redis解決用戶端session共享資訊怎麼解決的。
- redis分布式鎖解決了什麼問題?
- redis為什麼能支援分布式鎖?使用方式有哪些?
- MQ用在業務場景?MQ本身的優勢是什麼?一般什麼情況下可以使用這個技術?核心本質原因是什麼呢?開線程做不就可以了差別是什麼?
- zk,kafka
- 你們的總線講一下?
- Spring循環依賴怎麼解決?
- 讓你寫一下堆棧溢出你怎麼寫?為什麼往集合設定那麼多元素沒有被GC?
- 介紹一下Java的鎖?
-
你看這些源碼自己的了解是什麼?介紹了線程池execute,submit中适配的思想
你有什麼問我的?10min
百度3面 36min 過
自我介紹
- 寫部落格原因?
- 離職原因?
- 為什麼裸辭?
- 還有哪些再看的機會?
- 長期規劃?
- 你最大的優勢?
- 你怎麼學習一個技術?
- 你如何實作一個短期目标?
-
還有什麼問我的?
「流程快到沒朋友」,三面完半小時發來了測評,三面完一個小時發來了材料準備的郵件。
搜狐 1 面 64min 過
自我介紹
- 有其他offer嗎?
- tcp三次握手,四次揮手為什麼是4次?
- http1.0 1.1 2.0?
- redis 分布式鎖的實作方式?
- redis 資料結構有哪些,zset 底層資料結構是什麼,講一下?
- == equals差別,如果hashcode相等代表equals相等嗎?
- hashmap底層實作方式『tableSizeFor,hash』?
- 1.8相比1.7為什麼頭插變尾插?
- 線程安全的map有哪些?為什麼用concurrenthashmap?底層實作是什麼?
- 什麼時候變成紅黑樹?雙哈希表?「這些其實講到了源碼層面,initTable,resize,tryPresize,Thread.yield,ForwardingNode。」
- volatile講一下,MESI?
- Spring IOC,AOP你的了解講一下?
- Spring注入方式知道哪些?
- bean是線程安全的嗎?
- 緩存穿透,雪崩,擊穿講下你的了解。雪崩問題的解決方案?
- 實際場景提:活動頁面,對于該頁面資料有些使用者本身沒有緩存,有些使用者有對應緩存。參加活動了的使用者才有緩存,來了大量請求如何確定使用者的請求正常傳回。
- Innodb,memory差別?聚簇索引,非聚簇索引差別?B樹,B+樹差別?innodb還有什麼索引?回表操作再走一遍主表嗎?什麼情況下不走?
- 4種事務隔離級别和分别的問題?
- Linux指令用的多嗎?awk用過嗎?
- SQl調優你怎麼做的?
- Java垃圾收集器知道哪些?高并發情況下用哪個?
- 算法:二叉樹中序周遊,遞歸非遞歸實作
- 寫一下單例模式
-
有什麼問我的?
. 哪裡需要提高?
. 架構僅停留在使用層面-14,15,16題
. 業務上思考的少-16題
. 部門技術棧?
. 部門所做業務?
. 後續面試流程?-1年多經驗兩輪技術面。