選單

面經分享 | 2年經驗,1個月拿下阿里P6 Offer

這些面試題來自於我的老鄉讀者分享,很厲害,2年經驗,面試幾個月拿下了N個Offer,包括滴滴、有贊和阿里這些一二線公司。

內容完全來自讀者自己,引用部分為讀者自身回答描述,感謝分享。阿里的在最後部分。

酷樂家

redis叢集使用,宕機怎麼處理

mysql分庫分表,資料怎麼做分片

mysql索引瞭解和最佳化經歷

Zk資料同步,崩潰恢復

docker k8s常用打包命令

docker和虛擬機器的區別

volatile和synchronize關鍵字

hashMap特性

Zk鎖之間的節點同步

兌吧科技

一面

業務中redis叢集的使用

mysql索引,explain命令的結果

場景問題:生產日誌每天打10個G,怎麼防止日誌打滿磁碟。

場景問題:設計不同使用者角色的選單和功能許可權。

本地記憶體的瞭解。場景題:怎麼實現更新所有叢集中的機器中的本地記憶體。

我回答了rocketMQ的廣播模式

二面

場景問題:大量的http請求怎麼識別客戶的身份

根據IP和使用者行為做使用者標籤。

和電信移動等營業商合作,根據手機號碼直接獲取使用者資訊

日誌區別生產和線上

標誌識別(時間戳或者ip)

reactor模型的瞭解,它和麵向結構程式設計的本質區別

JVM的調優經歷和垃圾回收

synchronized鎖和concurrent包下面的常見工具類的瞭解。

場景問題:怎麼設計一個高併發的應用,從單體演變為分散式系統的過程。

同花順

一面

專案經驗

redis資料分片機制

看的書籍,介紹印象深刻的

用list手寫一個執行緒安全的佇列。

二面

介紹一下專案亮點,痛點和解決的過程。

怎麼解決分散式事務,用rocketmq是否存在訊息丟失的場合,怎麼做補償

業務中資料模型,設計的時候怎麼抽象表結構的。

分散式鎖對扣減庫存的效能影響,併發量大用樂觀鎖將壓力轉移到mysql是否合理

日常怎麼處理微服務之間的鏈路追蹤,traceId和大資料日誌採集的實現原理

redis的快取穿透、擊穿、雪崩怎麼處理,布隆過濾器

redis單執行緒效率高的原因

redis多路複用

netty的reactor模型

限流策略,sentinel的瞭解

在工作中的不足,怎麼彌補?

順豐科技

一面

專案複雜度的體現和用到的設計模式,下游服務的認知,訂單系統拆單邏輯。

分散式鎖,查庫存和扣減庫存原子性

分散式事務,訂單和庫存的事務一致性

多個系統之間資料同步, 釋出訂閱,初始化資料,增量binglog同步。

增量資料除了binglog怎麼同步?

透過version版本號,每次主動拉取更新資料查詢version比自己大的資料,進行更新。

Spring IOC,AOP

AOP是在什麼時候載入的,容器怎麼載入bean

Spring三級快取怎麼解決迴圈依賴

mybatis攔截器動態代理底層怎麼找到XML,怎麼執行sql

快遞訂單中,有收件人和寄件人,怎麼查詢某個使用者的快遞訂單(這個使用者有可能是收件人也可能是寄件人)

查詢:where 收件人=xx or 寄件人 =xx

用union 或者union all查詢,建立組合索引

敏捷開發的瞭解

最近看什麼書,辭職理由

二面

專案架構的描述、資料庫表結構的設計

閘道器層怎麼做限流

漏斗、令牌桶、滑動視窗(sentinel)

RMQ保證事務一致性

redis叢集

演算法:有一棵樹,每個節點可能有多個子節點,描述這種資料結構並且遍歷

第一種思路:子節點屬性用集合描述:Listchilden;遞迴遍歷

第二種思路:當作變形的二叉樹,左子樹是一個單一節點的部分,右子樹是一顆大樹,遍歷也要遞迴,複雜度很高。

有贊

一面

專案經驗

垃圾回收演算法,對CMS的瞭解

初始標記和併發標記的區別

Spring相關

redis  MySQL  RMQ

分庫分表的運用

JVM鎖

hashmap1。7和1。8的特效,1。8是否執行緒安全

chm

epoll poll select的區別 檔案描述符

二面

業務場景

redis分散式鎖

分散式事務

rocketmq

烏鶇科技

一面

sentinel結合dubbo做限流

怎麼實現單例,怎麼破壞單例

二面

執行緒池

類載入機制,分別載入了哪些物件

tomcat載入了哪個類載入器

jvm記憶體模型

垃圾回收演算法,CMS,三色標記法

JVM調優

分散式ID生成演算法

秒殺場景設計,解決超賣的設計

MySQL索引設計,怎麼索引建立

redis分散式鎖怎麼實現

阿里集團

一面

分散式鎖的多種設計

mysql分庫分表

秒殺的設計

DDD領域設計

分散式事務常見的解決方案

redis叢集

hashMap、chm

事務的特性

二面

業務場景50分鐘,深挖業務的設計,資料庫模型的設計,設計的缺陷和替代的設計方案。

mysql索引的最佳化、隔離級別、mvcc、redo和binglog寫入時機,同步機制。

JVM最佳化經歷

rocketmq的深入

volatile和synchronize

dubbo的流程,對稱加密和非對稱加密、spi、負載均衡演算法

演算法leetcode隨機抽一題,不需要運算透過,基本不卡人

三面

純業務的理解和行業領域的認識50分鐘

四面

專案的價值,在工作中的職責,做了哪些事情

開源框架的瞭解,netty的瞭解,怎麼實現一個聊天客戶端

設計一個rpc框架,dubbo怎麼用執行緒實現同步呼叫,具體需要幾個執行緒

答不出

看的書籍,收穫、個人職業規劃等

總結

2年的話感覺問的東西不是很難,把你那些我要進大廠的東西看一看,是一個知識概覽。然後大廠對於每個知識會問的比較深入,看的話要平時多看書,也可以看看極客時間的各個文章。

專案經驗很重要,一般在各個中臺的核心業務,例如交易 商品 營銷 支付,做過這些東西並且能總結出專案的內容和難點大廠一般都要。

面經分享 | 2年經驗,1個月拿下阿里P6 Offer

面試就這樣,看完覺得怎麼樣,實際上這些問題我基本上90%都寫過了,關注我回復【PDF】就可以獲取面試攻略了。

面經分享 | 2年經驗,1個月拿下阿里P6 Offer

·················END·················