前言
今天給大家分享群友們的大廠面試經歷,并為大家總結大廠面試中的規律

阿里巴巴Java崗位(技術三面)
一面
1、自我介紹,講講求職意向和擅長的技能
2、Tomcat的基本架構是什么?
3、JVM調優,作業中怎么用,GC演算法和回收策略有哪些
4、Java中執行緒池是如何實作的? 創建執行緒池的幾個核心構造引數是什么?
5、Volatile和Synchronize的區別?
6、GC的機制是什么?垃圾回收器的基本原理是還說呢么?是否可以立即回收記憶體?怎么樣主動的通知JVM進行垃圾回收?
7、類加載器雙親委派模型機制?
8、集合的種類和區別,HashMap底層如何實作(JDK1.8有所改動),HashMap和ConcurrentHashMap的區別?
9、Spring IOC如何管理Bean之間的依賴關系,怎么樣避免回圈依賴?
10、SpringBean創建程序中的設計模式?
二面
1、自我介紹、
2、InnoDB支持的四種事務隔離級別名稱是什么? 之間的區別是什么?
3、聊一聊事務的特性
4、什么是MySQL隔離級別?
5、如何理解BTree機制?
6、談一談對慢查詢的分析?MySQL常用的優化方法有哪些?
7、談一談悲觀鎖和樂觀鎖以及SQL的實作
8、簡述三次握手和四次握手的程序?
9、B+樹索引和Hash索引的區別?
三面
1、自我介紹
2、MySQL的鎖并發?
3、高并發場景下如何防止死鎖,保證資料的一致性?
4、集群和負載均衡的演算法與實作?
5、簡述分庫與分表設計?
6、分庫分表帶來的分布式困境與對應之策有哪些?
7、加鎖的機制是什么?
8、Redis和Setnx命令使如何實作分布式鎖的?使用Redis怎么進行異步佇列?會有什么缺點?
騰訊Java崗位(技術四面)
一面
1、說說對JVM的理解?
2、treemap和HashMap的區別?
3、多執行緒的五大狀態?
4、MySQL主鍵和索引的區別?
5、聊聊做的一些專案
6、如何實作session共享?用Redis該如何實作?
7、快取擊穿的概念和解決方案?
8、聊聊微服務,以及微服務之間是如何進行管理的
二面
1、Java中nio和io的區別?常用的類有哪些?
2、Java里面的同步鎖了解嗎? CountDownLaunch和Cylicbarrior的區別,分別在什么場景下使用?
3、JVM的記憶體結構,哪些是共享的,哪些是執行緒私有的? Java虛擬機里堆疊分別存放什么?
4、如何實作一個執行緒池?
5、Java的類加載在哪些情況下會觸發?
6、手寫代碼:快速排序,單利模式, 畫一個工廠模式和裝飾者模式的UML類圖
7、AOP的實作原理
8、怎么優化慢查詢?
9、Java的鎖有哪些?可重入鎖和不可重入鎖的區別?
10、Lock和Synchronized的區別?他們都是可重入鎖嗎?哪個效率更高?
11、手寫SpringMVC DispatcherServlet的大致實作?
三面
1、聊一聊平時的專案并發經驗
2、Redis的資料結構? 執行緒模型? Redis的資料淘汰機制?
3、讀過Redis的原始碼嗎?
4、MySQL實作事務的原理
5、MQ底層原理的實作?
6、資料庫事務acid,事務操作,怎么加鎖?分布式系統鎖?
7、什么情況下會發生雪崩?如何解決?
四面
1、介紹一些并發專案
2、技術含量較高的專案,從架構設計到部署問了一遍
3、高并發架構的設計思路
螞蟻金服Java崗位(技術三面)
一面
1、HashMap和ConcurrentHashMap
2、談一談Hash的一致演算法
3、樂觀鎖和悲觀鎖
4、可重入鎖和Synchronized
5、事務的四大特性?
6、事務的二段提交機制?
7、聚簇索引和非聚簇索引
8、舉例說一下索引的應用場景和注意事項?
9、當前讀和快照讀
10、聊一聊類加載的程序?
11、雙親委派機制及其使用原因?
12、聊一聊GC的演算法?
13、Http和Https的區別? 以及Https加密的方式
14、執行緒池的核心引數和基本原理?執行緒池的調優策略
15、談談個人的職業規劃
二面
1、聊一聊個人做過的專案,遇到過哪些難點?
2、Collections.sort底層的排序方式?
3、排序的穩定性,以及不同場景下的排序策略
4、Http請求程序,DNS決議的程序
5、三次握手和四次握手
6、簡述執行緒池和并發工具有哪些、
7、資料庫的索引和原理
8、頻繁老年代回收怎么分析和解決?
9、Spring IOC/AOP相關知識
10、講講SpringBoot和SpringCloud的一些應用?
11、阻塞佇列不用Java提供的該怎么實作?
12、負載均衡的原理?
13、Redis的資料一致性問題,分布式多節點和單節點環境下分別描述
14、講講Docker容器
15、如何實作高并發環境下的削峰、限流?
三面
1、聊一聊專案中用到的中間件(Dubbo/MQ/Zookeeper/Redis/Kafka)
2、什么情況下會造成雪崩?該怎么避免這種情況
3、高并發架構的設計思路
4、聊一聊以前的專案中遇到的問題和解決策略
5、生活中遇到過哪些挫折?最后怎么解決的
6、生活中遇到的最有成就感的事情?
總結:
通過這些面試經歷不難發現,一線互聯網公司都比較注重實際的專案中解決問題的能力,另外面試的知識點主要圍繞JVM、多執行緒相關、基礎知識的底層原理、性能調優、原始碼閱讀能力、處理高并發的能力,
接下來小編為大家準備了以上面試題的答案,以及對應的面試題資料領取:戳這里免費領取,暗號:CSDN



轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/104215.html
標籤:其他
上一篇:基于單片機的下載器
