百度(三面)

百度一面(現(xiàn)場)
- 自我介紹
- Java中的多態(tài)
- 為什么要同時重寫hashcode和equals
- Hashmap的原理
- Hashmap如何變線程安全,每種方式的優(yōu)缺點
- 垃圾回收機制
- Jvm的參數(shù)你知道的說一下
- 設(shè)計模式了解的說一下
- 手撕一個單例模式
- 算法題目
- 手撕算法:反轉(zhuǎn)單鏈表
- 手撕算法:實現(xiàn)類似微博子結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu),輸入一系列父子關(guān)系,輸出一個類似微博評論的父子結(jié)構(gòu)圖
- 手寫java多線程
- 手寫java的soeket編程,服務(wù)端和客戶端
- 手撕算法:爬樓梯,寫出狀態(tài)轉(zhuǎn)移方程
- 智力題:時針分針什么時候重合
百度二面(現(xiàn)場)
- 自我介紹
- 項目介紹
- 服務(wù)器如何負(fù)載均衡,有哪些算法,哪個比較好,一致性哈希原理,怎么避免DDOS攻擊請求打到少數(shù)機器?
- TCP連接中的三次握手和四次揮手,四次揮手的最后一個ack的作用是什么,為什么要time wait,為什么是2msl?
- 數(shù)據(jù)庫的備份和恢復(fù)怎么實現(xiàn)的,主從復(fù)制怎么做的,什么時候會出現(xiàn)數(shù)據(jù)不一致,如何解決?
- Linux查看cpu占用率高的進程
- 手撕算法:給定一個數(shù)字三角形,找到從頂部到底部的最小路徑和。每一步可以移動到下面一行的相鄰數(shù)字上。
- 然后繼續(xù)在這個問題上擴展
- 求出最短那條的路徑
- 遞歸求出所有的路徑
- 設(shè)計模式講一下熟悉的
- 會不會濫用設(shè)計模式?
- 多線程條件變量為什么要在while體里?
- 你遇到什么挫折,怎么應(yīng)對和處理?
百度三面(現(xiàn)場)
- 自我介紹
- 項目介紹
- Redis的特點
- Redis的持久化怎么做,aof和rdb,有什么區(qū)別,有什么優(yōu)缺點?
- Redis使用哨兵部署會有什么問題?【我說需要擴容的話還是得集群部署?!?/li>
- 說一下JVM內(nèi)存模型把,有哪些區(qū),分別干什么的?
- 說一下gc算法,分代回收說下
- MySQL的引擎講一下,有什么區(qū)別,使用場景呢?
- 分布式事務(wù)了解么?
- 反爬蟲的機制,有哪些方式?
阿里中間件(四面)

Java中間件一面
技術(shù)一面考察范圍:
- 重點問了Java線程鎖:synchronized 和ReentrantLock相關(guān)的底層實現(xiàn)
- 線程池的底層實現(xiàn)以及常見的參數(shù)
- 數(shù)據(jù)結(jié)構(gòu)基本都問了一遍,鏈表、隊列等
- Java內(nèi)存模型:常問的JVM分代模型,以及JDK1.8后的區(qū)別,最后還問了JVM相關(guān)的調(diào)優(yōu)參數(shù)
- 分布式鎖的實現(xiàn)比較
技術(shù)一面題目:
1:自我介紹
2:擅長哪方面的技術(shù)?
3;java有哪些鎖中類?(樂觀鎖&悲觀鎖、可重入鎖&Synchronize等)
4:比較重要的數(shù)據(jù)結(jié)構(gòu),如鏈表,隊列,棧的基本原理及大致實現(xiàn)
5:J.U.C下的常見類的使用。Threadpool的深入考察;blockingQueue的使用
6:Java內(nèi)存分代模型,GC算法,JVM常見的啟動參數(shù);CMS算法的過程
7:Volatile關(guān)鍵字有什么用(包括底層原理)?
8:線程池的調(diào)優(yōu)策略
9:Spring cloud的服務(wù)注冊與發(fā)現(xiàn)是怎么設(shè)計的?
10:分布式系統(tǒng)的全局id如何實現(xiàn)
11:分布式鎖的方案,redis和zookeeper那個好,如果是集群部署,高并發(fā)情況下那個性能更好?
Java中間件二面
技術(shù)二面考察范圍:
- 問了項目相關(guān)的技術(shù)實現(xiàn)細(xì)節(jié)
- 數(shù)據(jù)庫相關(guān):索引、索引底層實現(xiàn)、mysql相關(guān)的行鎖、表鎖等
- redis相關(guān):架構(gòu)設(shè)計、數(shù)據(jù)一致性問題
- 容器:容器的設(shè)計原理等
技術(shù)二面題目:
- 參與的項目,選一個,技術(shù)難度在哪里?
- Collections.sort底層排序方式
- 負(fù)載均衡的原理
- 設(shè)計模式與重構(gòu),談?wù)勀銓χ貥?gòu)的理解
- 談?wù)剅edis相關(guān)的集群有哪些成熟方案?
- 再談?wù)勔恢耯ash算法(redis)
- 數(shù)據(jù)庫索引,B+樹的特性和建樹過程
- Mysql相關(guān)的行鎖,表鎖、樂觀鎖、悲觀鎖
- 談?wù)劧嗑€程和并發(fā)工具的使用
- 談?wù)剅edis的架構(gòu)和組件
- Redis的數(shù)據(jù)一致性問題(分布式多節(jié)點環(huán)境&單機環(huán)境)
- Docker容器
Java中間件三面
技術(shù)三面考察范圍:
- 主要談到了高并發(fā)的實現(xiàn)方案
- 以及中間件:redis、rocketmq、kafka等的架構(gòu)設(shè)計思路
- 最后問了平時怎么提升技術(shù)的
技術(shù)三面題目:
- 高并發(fā)情況下,系統(tǒng)是如何支撐大量的請求的?
- 接著上面的問題,延伸到了中間件,kafka、redis、rocketmq、mycat等設(shè)計思路和適用場景等
- 最近上過哪些技術(shù)網(wǎng)站?最近再看哪些書?
- 工作和生活中遇見最大的挑戰(zhàn),怎么去克服?
- 未來有怎樣的打算
Java中間件四面
最后,你懂的,主要就是HR走流程了,主要問了未來的職業(yè)規(guī)劃。
螞蟻中間件團隊面試題

螞蟻中間件一面
- 自我介紹
- JVM垃圾回收算法和垃圾回收器有哪些,最新的JDK采用什么算法?
- 新生代和老年代的回收機制
- 講一下ArrayList和linkedlist的區(qū)別,ArrayList與HashMap的擴容方式
- Concurrenthashmap1.8后的改動
- Java中的多線程,以及線程池的增長策略和拒絕策略了解么?
- Tomcat的類加載器了解么?
- Spring的ioc和aop,Springmvc的基本架構(gòu),請求流程
- HTTP協(xié)議與Tcp有什么區(qū)別,http1.0和2.0的區(qū)別?
- Java的網(wǎng)絡(luò)編程,講講NIO的實現(xiàn)方式,與BIO的區(qū)別,以及介紹常用的NIO框架
- 索引什么時候會失效變成全表掃描?
- 介紹下分布式的paxos和raft算法
螞蟻中間件二面
- 你在項目中怎么用到并發(fā)的?
- 消息隊列的使用場景,談?wù)凨afka
- 你說了解分布式服務(wù),那么你怎么理解分布式服務(wù)?
- Dubbo和Spring Clound的區(qū)別,以及使用場景
- 講一下docker的實現(xiàn)原理,以及與JVM的區(qū)別
- MongoDB、Redis和Memcached的應(yīng)用場景,各自優(yōu)勢
- MongoDB有事務(wù)嗎?
- Redis說一下sorted set底層原理
- 講講Netty為什么并發(fā)高,相關(guān)的核心組件有哪些?
螞蟻中間件三面
- 完整的畫一個分布式集群部署圖,從負(fù)載均衡到后端數(shù)據(jù)庫集群
- 分布式鎖的方案,Redis和Zookeeper哪個好,如果是集群部署,高并發(fā)情況下哪個性能更好?
- 分布式系統(tǒng)的全局id如何實現(xiàn)?
- 數(shù)據(jù)庫萬級變成億級,你如何來解決?
- 常見的服務(wù)器雪崩是由什么引起的,如何來防范?
- 異地容災(zāi)怎么實現(xiàn)?
- 常用的高并發(fā)技術(shù)解決方案有哪些,以及對應(yīng)的解決步驟?
面試答案
這份面試文件涵蓋了Java開發(fā)1至5年的面試常見技術(shù)問題,整體分為當(dāng)季最新系列、大廠面試真題系列、技術(shù)系統(tǒng)分類系列三部分。(純文字文本占內(nèi)存46.97MB)
- 2022年最新面試題

- 系統(tǒng)技術(shù)分類系列
JVM、MySQL、Mybatis、MongoDB、Redis、Spring、Spring boot、Spring cloud、Kafka、RabbitMQ、Nginx......


由于篇幅限制小編,pdf 文檔的詳解資料太全面,細(xì)節(jié)內(nèi)容實在太多啦,所以只把部分知識點截圖出來粗略的介紹,每個小節(jié)點里面都有更細(xì)化的內(nèi)容!如需參考原件 pdf 學(xué)習(xí)+刷題可以幫忙三連支持一下