歡迎光臨
每天分享高質量文章

普通公司員工的程式設計水平與阿裡巴巴有多大差距?

BAT的牛人多,普通人也多,雖然他們不是每個人都能達到令人仰望的技術水平,但畢竟平臺高,所以眼光會變得寬闊;程式碼要求更為嚴格,所以普通的程式員也會被逼變得更優秀;身邊的牛人多,普通的程式員也會受到影響,提升的更快。

正好今天看到一篇文章,是講去阿裡的面試經歷,也分享給大家,看看自己離著【進】阿裡還有多大的差距。

Java多執行緒

  • 執行緒池的原理,為什麼要建立執行緒池?

  • 執行緒的生命週期,什麼時候會出現僵死行程;

  • 什麼實現執行緒安全,如何實現執行緒安全;

  • 建立執行緒池有哪幾個核心引數? 如何合理配置執行緒池的大小?

  • synchronized、volatile區別、synchronized鎖粒度、模擬死鎖場景、原子性與可見性;

JVM相關

  • JVM記憶體模型,GC機制和原理;GC分哪兩種;什麼時候會觸發Full GC?

  • JVM裡的有幾種classloader,為什麼會有多種?

  • 什麼是雙親委派機制?介紹一些運作過程,雙親委派模型的好處;(這個我真的不會…)

  • 什麼情況下我們需要破壞雙親委派模型;

  • 常見的JVM調優方法有哪些?可以具體到調整哪個引數,調成什麼值?

  • JVM虛擬機器記憶體劃分、類載入器、垃圾收集演演算法、垃圾收集器、class檔案結構是如何解析的;

Java擴充套件

  • 紅黑樹的實現原理和應用場景;

  • NIO是什麼?適用於何種場景?

  • Java9比Java8改進了什麼;

  • HashMap內部的資料結構是什麼?底層是怎麼實現的?

  • 說說反射的用途及實現,反射是不是很慢,我們在專案中是否要避免使用反射;

  • 說說自定義註解的場景及實現;

  • List和Map區別,Arraylist與LinkedList區別,ArrayList與Vector 區別;

Spring

  • Spring AOP的實現原理和場景;(應用場景很重要)

  • Spring bean的作用域和生命週期;

  • Spring Boot比Spring做了哪些改進? Spring 5比Spring4做了哪些改進;(慚愧呀,我們還在用Spring4,高版本的沒關心過)

  • Spring IOC是什麼?優點是什麼?

  • SpringMVC、動態代理、反射、AOP原理、事務隔離級別;

中介軟體

  • Dubbo完整的一次呼叫鏈路介紹;

  • Dubbo支援幾種負載均衡策略?

  • Dubbo Provider服務提供者要控制執行併發請求上限,具體怎麼做?

  • Dubbo啟動的時候支援幾種配置方式?

  • 瞭解幾種訊息中介軟體產品?各產品的優缺點介紹;

  • 訊息中介軟體如何保證訊息的一致性和如何進行訊息的重試機制?

  • Spring Cloud熔斷機制介紹;

  • Spring Cloud對比下Dubbo,什麼場景下該使用Spring Cloud?

資料庫篇

  • 鎖機制介紹:行鎖、表鎖、排他鎖、共享鎖;

  • 樂觀鎖的業務場景及實現方式;

  • 事務介紹,分散式事物的理解,常見的解決方案有哪些,什麼事兩階段提交、三階段提交;

  • MySQL記錄binlog的方式主要包括三種樣式?每種樣式的優缺點是什麼?

  • MySQL鎖,悲觀鎖、樂觀鎖、排它鎖、共享鎖、表級鎖、行級鎖;

  • 分散式事務的原理2階段提交,同步\非同步\阻塞\非阻塞;

  • 資料庫事務隔離級別,MySQL預設的隔離級別、Spring如何實現事務、

  • JDBC如何實現事務、巢狀事務實現、分散式事務實現;

  • SQL的整個解析、執行過程原理、SQL行轉列;

Redis

  • Redis為什麼這麼快?redis採用多執行緒會有哪些問題?

  • Redis支援哪幾種資料結構;

  • Redis跳躍表的問題;

  • Redis單行程單執行緒的Redis如何能夠高併發?

  • Redis如何使用Redis實現分散式鎖?

  • Redis分散式鎖操作的原子性,Redis內部是如何實現的?

看完了有什麼感想,自己和BAT的要求有差距麼?

已同步到看一看
贊(0)

分享創造快樂