【實習面經】一口氣面完了字節、陌陌、雲從,我發現面試官原來是這樣問問題的?

看面經是非常有必要的,特別是面試前,面哪個公司就搜哪個公司的面經看!看面試官問什麼?怎麼問?每個公司的面試側重點是不一樣的。通過面經去查缺補漏、側重複習是可以事半功倍的!當然不是建議大家面經式的學習,在系統學習的基礎上,面經的作用纔會發揮的更大!

今天給大家分享一位同學的日常實習面經,主要包括:陌陌、雲從科技、字節跳動

陌陌

  1. 高併發情況下的解決策略
  2. 項目架構,項目如何解決併發量?
  3. 異步隊列是怎麼解決的寫壓力大的問題?
  4. 隊列中消息是允許延遲嗎?如果延遲的話怎麼保證消息不被重複消費?
  5. 怎麼保證緩存和數據庫雙寫一致?
  6. 說一說進程所佔的虛擬內存和物理內存是什麼樣的?
  7. JVM 進程所佔的虛擬內存和物理內存相差比較大是什麼情況?
  8. JVM 進程所佔用的虛存大於了虛擬機的堆棧設置參數,爲什麼不報錯?
  9. 如果自己實現一個事物的插入操作和刪除操作的原子性,你怎麼實現?
  10. 什麼是事物原子性?
  11. Linux 從一個文件夾中找到文件名包含某些 key 的文件的命令
  12. 字符串數目從 0 開始,一直往後遞增,字符串大小不需要考慮,只是字符串的數量不斷增加,在高併發的情況下,QPS 十幾萬時,怎麼生成這個確定的唯一 id,還可以保證下次查詢時高效率的查到?

雲從科技

  • 一面:
  1. 問了 15min 項目
  2. MySQL 會使索引失效的情況
  3. MySQL 事務的隔離級別
  4. MySQL 怎麼解決髒讀,怎麼解決幻讀?
  5. 舉例 MySQL 發生死鎖的情況
  6. 瞭解 MySQL 分區、分表嗎?分表的方式說一下
  7. MySQL 主從複製的實現流程
  8. 介紹一下常用的 Linux 命令
  9. Linux /etc /usr 這兩個目錄下分別存放的什麼文件
  10. 什麼是分佈式 session 問題?
  11. 常見的負載均衡的策略
  12. MySQL 的讀寫分離配置過程用到了什麼註解?
  13. Redis 內存淘汰策略
  14. 什麼是 Redis 緩存雪崩?什麼是 Redis 緩存穿透?
  15. Java 集合 HashTable 和 ConcurrentHashmap 的區別?
  16. Volatile 關鍵字實現原理
  17. NIO 有哪些類?
  18. 舉例常用的字節流、創建字節流後,關閉有幾種方式
  19. JVM 運行時內存區有幾塊?
  20. Spring IOC 注入 bean 有幾種方式?
  21. AOP 的實現原理
  22. AOP 中用到了哪些註解?怎麼做切面的優先級(先走切面2,再走切面1)?
  23. JVM 加載類的過程
  24. JDK 中 rt 目錄下的類是哪個加載器加載的?
  25. ArrayList 和 LinkedList 的區別?
  26. ArrayList 是線程安全的嗎?ArrayList 是有序的嗎?
  27. Set 集合的底層實現
  28. 平時用線程是直接 new 還是用線程池進行管理的?JDK 常用的線程池介紹一下?
  29. 緩衝線程池的存儲結構,有上限嗎?
  30. 內存泄漏和內存溢出的區別?內存泄漏常發生在 JVM 哪?
  • 二面
  1. Java 面向對象特性介紹一下,類能否多繼承?子類繼承父類,會繼承父類的所有屬性嗎?
  2. 設計模式熟悉哪些。適配器與代理模式的區別?
  3. 適配器模式有哪幾種實現方式,使用適配器模式的優點?
  4. JVM 內存分配策略,新生代對象晉升到老年代的年齡閥值默認是多少?
  5. Eden 區垃圾回收用什麼算法?爲什麼用這個算法?
  6. IOC 和 AOP 的實現
  7. 說一下你自己實現的動態代理是怎麼寫的?
  8. IOC 中 DI 注入方式?如果在一個系統中有很多不同包下的 bean 名字是一樣的,怎麼解決注入時的衝突問題?(這些 bean 不分優先級)
  9. Mybatis 整合 SpringBoot 做表的操作時,環境搭建過程,說一下你用到的 Linux 命令
  10. Linux 查 Java 進程的命令,查文件中關鍵字向下 500 行的命令
  11. Linux 用什麼命令打開大文件,比如:5G 這麼大?
  12. InnoDB 索引種類
  13. 聚簇索引和非聚簇索引區別?
  14. MySQL 事物隔離離別
  15. 介紹讀已提交的含義
  16. Redis 哨兵模式和集羣模式區別?
  17. 負載均衡算法 一致性 hash 說一下?
  18. 高併發情況下的解決策略
  19. 分佈式的一些概念
  20. Redis 併發量上限
  21. 最早什麼時候可以來,可以實習多久?
  22. 你有什麼要問我的嗎?

字節跳動

  • 一面:
  1. 鏈表數組區別
  2. 寫鏈表翻轉(代碼)
  3. 合併 k 個有序數組(代碼)
  4. HashMap 實現原理
  5. 解決 hash 衝突的其他方法
  6. 生產者消費者模型的實現(代碼)
  7. Linux 查看 CPU 核數命令
  • 二面:
  1. Leetcode121 題:買賣股票的最佳時機
  2. 當前視頻面試時,用到了哪些網絡協議?
  3. 項目講一下,參與了什麼設計、什麼流程?
  4. 手寫 MySQL 左連接查詢,把表也模擬寫出來,查詢結果也寫出來
  5. Linux 根目錄的命名規範介紹一下
  6. 你的學習目標是什麼?還想學習什麼技術?
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章