前言
Java開發五年多.投遞阿里、騰訊、頭條、美團、京東等各互聯網公司的高級Java崗位,最終得到了美團的面試機會,併成功拿下美團高級Java崗的offer。美團Java崗四面,前三面都是技術面,第四面是HR面,下面是面試題!
美團Java崗一面(技術,電話面,約40分鐘)
自我介紹。
項目介紹。
瞭解過redis源碼及redis集羣麼?
分佈式下redis如何保證線程安全?
Hashmap的原理,源碼?
Hashmap增刪的情況後端數據結構如何位移?
hashmap容量爲什麼是2的冪次?
object類你知道的方法?
你重寫過hashcode和equals麼,要注意什麼?
jvm內存分區,爲什麼要有新生代和老年代?
有做過JVM內存優化嗎?
數據庫索引 主鍵和唯一索引有什麼區別?
聚集索引和非聚集索引的區別?
MySQL存儲引擎innoDB和MyISAM的區別?
講一下穩定的排序算法和不穩定的排序算法?
講一下快速排序的思想?
美團Java崗二面(技術試,約60分鐘)
幾種線程池區別?
aio,nio,bio的瞭解,NIO的核心概念有哪些?
常用的NIO框架有哪些,優劣勢?
事務的四大隔離級別?
jvm場景問題, 標記清除多次後老年代產生內存碎片,引起full gc,接下來可能發生什麼問題?
MySQL innodb的b+樹索引,主鍵索引,聚簇索引有什麼區別?
數據庫四大特性?
MySQL裏有哪些鎖,行鎖表鎖,樂觀鎖呢?
MySQL的死鎖怎麼產生的,舉了兩個例子。
dubbo裏的zookeeper是做什麼的?
表鎖 行鎖 樂觀鎖 悲觀鎖的特點和區別?
併發工具包有哪些,具體怎麼用?
Docker平時怎麼使用的?
Kafka如何解決數據堆積?
kafka消息的存儲機制?
如何用kafka保證消息的有序性?
kafka如何保證併發情況下消息只被消費一次?
美團Java崗三面(技術面,約60分鐘)
項目介紹。
最有技術難度的項目,介紹下相關核心設計流程。
分佈式下redis如何保證線程安全?
redis持久化的方式以及區別?
zookeeper如何實現分佈式鎖、其他分佈式鎖怎麼實現?
kafka的架構,如何用kafka保證消息的有序性?
數據庫的優化包含哪些?MySQL的優化,談兩個你優化的例子。
redis用的哪個版本?
如何搭建redis集羣?
redis如何主從同步?
redis分佈式鎖注意事項?
redis持久化的方式以及區別?
redis持久化方式及區別?
my sql數據量多大的時候需要分表?
my sql常用的存儲引擎及區別?
zookeeper的作用:分佈式鎖、註冊服務中心?
zookeeper如何實現分佈式鎖、其他分佈式鎖怎麼實現?
分佈式事務的解決方案?
單點登錄怎麼實現?
秒殺系統怎麼來實現?
工作中,遇見了技術瓶頸無法解決,你的解決思路?
技術選型方面,一個新技術和一個穩定的舊技術,你會如何選擇,會考慮哪些因素?
美團Java崗四面(HR面試,約30分鐘)
自我介紹下。
自己的優點和缺點。
爲啥想來美團,對美團瞭解多少?
心中的互聯網公司排序。
工作中遇見暫時無法解決的問題,你是怎麼應對的?
最近在學什麼新技術
你是通過什麼路徑與方法,去學習和接觸一門新技術的?
未來的職業規劃是什麼?
溝通崗位與薪資:此處省略......
總結
所有的面試題目都不是一成不變的,像美團這種大廠,上面的面試真題只是給大家一個借鑑作用,最主要的是給自己增加知識的儲備,有備無患。
最後給大家分享:Java面試題總結+各知識點學習思維導圖
關注公種浩,程序員追風,獲取資料。這些資料的內容都是面試時面試官必問的知識點,其中包括了有基礎知識、Java集合、JVM、多線程併發、spring原理、微服務等等。
希望能幫助到你面試前的複習且找到一個好的工作,也節省你在網上搜索資料的時間來學習,記得關注我一下,以後會有更多幹貨分享喲。
最後
歡迎大家一起交流,喜歡文章記得關注我點個贊喲,感謝支持!