1. 程式人生 > 其它 >成功入職頭條月薪35K,附專案原始碼

成功入職頭條月薪35K,附專案原始碼

成功入職頭條月薪35K,附專案原始碼

一面:

先是問了問專案,然後就開始問一些問題

1、每個請求耗時100ms,機器的配置是4核8G,問要達到10000TPS需要多少臺機器?

沒答上來,問了問是IO密集型還是CPU密集型,然後面試官說我想得太複雜了

2、怎麼實現網頁的自動跳轉

答301 302的Location欄位,然後又問了我這兩個有什麼區別

3、有一個10G大小的檔案,裡面都是32位的無符號整數,但是記憶體大小隻有1G,問如何找出裡面重複的數字

一開始說用hash,先hash到小檔案。面試官說有沒有更簡單的,答點陣圖,又問你覺得點陣圖會佔用多大的記憶體空間。算了一會,答512M

然後就是演算法題,一個Unix的路徑,簡化這個路徑,Leetcode上有原題

一面大概36分鐘

二面:

圍繞專案問了很多問題,和我討論了怎麼保證雙寫的一致性、訊息佇列中訊息積壓了怎麼辦、為什麼要用到分散式鎖、ZK的分散式鎖的使用流程、ZK的選主策略、同步策略然後又圍繞Kafka問了一些問題。

1、Kafka怎麼保證順序消費?

2、Kafka的架構是什麼樣的?

3、Kafka可以保證一個主題所有的分割槽都順序消費嗎?

演算法,給一個數n,求所有和等於這個數的連續子序列,比如15=1+2+3+4+5=4+5+6=8+7,所以輸出3.

三面:

主要是圍繞著基礎的知識問了一些問題:

1、Java的GC

2、反射,反射是怎麼實現的。

沒看過是怎麼實現的,現場猜想了一下,應該答錯了

3、講一下樂觀鎖和悲觀鎖

4、網路協議的分層,每一層是幹嘛用的

5、DNS是哪一層的,域名解析的過程是什麼樣的?

6、程序間通訊的方式,什麼情況下需要程序間通訊?

這個題答得也不太好,講了管道、訊號、共享記憶體區域

7、volatile關鍵字

8、Synchronized和Lock

這個地方我是想等他來問我底層的原理,所以說的時候沒說完。不過說完他也沒反饋,也許知道什麼就應該全部說出來?

做一道演算法題,序列化和反序列化二叉樹

9、核心態和使用者態介紹一下

最後面試官和我聊了聊平時是怎麼學習的,最近學什麼東西比較有心得,以後的職業規劃是什麼。

面試資料整理彙總

這些面試題是我朋友進阿里前狂刷七遍以上的面試資料,由於面試文件很多,內容更多,沒有辦法一一為大家展示出來,所以只好為大家節選出來了一部分供大家參考,需要全部文件的,關注小編後,

點選這裡即可免費領取

面試的本質不是考試,而是告訴面試官你會做什麼,所以,這些面試資料中提到的技術也是要學會的,不然稍微改動一下你就涼涼了

在這裡祝大家能夠拿到心儀的offer!