前言:java
大廠面試機會可貴,爲了提升面試通關率,建議朋友們在面試前先覆盤本身的知識棧,依據掌握程度劃分重要、優先級,系統地去學習!若是不許備充分就去參加面試,既會失去進入大廠的機會,更是對本身的不負責。linux
螞蟻花唄一面(一個小時):面試
一、Java容器有哪些?哪些是同步容器,哪些是併發容器?
二、ArrayList和LinkedList的插入和訪問的時間複雜度?
三、java反射原理, 註解原理?
四、說說一致性 Hash 原理
五、新生代分爲幾個區?使用什麼算法進行垃圾回收?爲何使用這個算法?
六、HashMap在什麼狀況下會擴容,或者有哪些操做會致使擴容?
七、HashMap push方法的執行過程?
八、HashMap檢測到hash衝突後,將元素插入在鏈表的末尾仍是開頭?
九、1.8還採用了紅黑樹,講講紅黑樹的特性,爲何人家必定要用紅黑樹而不是AVL、B樹之類的?
十、https和http區別,有沒有用過其餘安全傳輸手段?
十一、線程池的工做原理,幾個重要參數,而後給了具體幾個參數分析線程池會怎麼作,最後問阻塞隊列的做用是什麼?
十二、linux怎麼查看系統負載狀況?
1三、請詳細描述springmvc處理請求全流程?
1四、spring 一個bean裝配的過程?
1五、項目用 Spring 比較多,有沒有了解 Spring 的原理?AOP 和 IOC 的原理複製代碼
螞蟻花唄二面:redis
一、查詢中哪些狀況不會使用索引?
二、數據庫索引,底層是怎樣實現的,爲何要用B樹索引?
三、Mysql主從同步的實現原理?
四、MySQL是怎麼用B+樹?
五、談談數據庫樂觀鎖與悲觀鎖?
六、有使用過哪些NoSQL數據庫?MongoDB和Redis適用哪些場景?
七、描述分佈式事務之TCC服務設計?
八、Redis和memcache有什麼區別?Redis爲何比memcache有優點?
九、Redis 的數據結構
十、海量數據過濾,黑名單過濾一個 url。
十一、講一講AtomicInteger,爲何要用CAS而不是synchronized?複製代碼
螞蟻花唄三面:算法
一、考慮redis的時候,有沒有考慮容量?大概數據量會有多少?
二、Redis 的 list zset 的底層實現
三、solr和mongodb的區別,存數據爲何不用solr?
四、分佈式 session 的共享方案有哪些,有什麼優劣勢
五、談談分佈式鎖、以及分佈式全局惟一ID的實現比較?
六、集羣監控的時候,重點須要關注哪些技術指標?這些指標如何優化?
七、從千萬的數據到億級的數據,會面臨哪些技術挑戰?你的技術解決思路?
八、數據庫分庫分表須要怎樣來實現?
九、排序算法的複雜度,快速排序非遞歸實現。
十、消息中間件有哪些?他們之間的優劣勢?複製代碼
螞蟻花唄四面:spring
一、分佈式架構設計哪方面比較熟悉
二、介紹你實踐的性能優化案例,以及你的優化思路
三、介紹項目,談一個你以爲你學到最多的項目,使用了什麼技術,挑戰在哪裏
各類聊項目,從項目的架構設計到部署流程。
四、最近有沒有學習過新技術?
五、有什麼想問個人?
六、最近兩年遇到的最大的挫折,從挫折中學到了什麼?
七、三年到五年的職業規劃?複製代碼
HR面:sql
一、工做中遇到的最大挑戰是什麼,你如何克服的?
二、你最大的優勢和最大的缺點,各自說一個?
三、將來的職業發展,短時間和長期的規劃是什麼?
四、最後主要就是HR走流程了,主要問了將來的職業規劃。複製代碼
最後給你們分享一些學習資料,裏面包括:(BATJ面試資料、高可用、高併發、高性能及分佈式、Jvm性能調優、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)和Java進階學習路線圖。mongodb
免費領取方式:加微信號 weixin99ting 便可。
最後,祝你們早日學有所成!數據庫