好像大學那會的習慣遺傳到了現在,畢業這麼多年了,一到面試回答問題,就心跳加快,呼吸加重,腎上腺素急劇攀升,緊張的不行,然後就在收到面試通知的時候,就開始各種找面試題刷題,玩命刷題,獲得一絲心安,這幾年,真的刷了不老少的題,可是沒怎麼跳槽,只是單純的面試一下檢測自己的成長水平,我覺得挺好的,說不定就在這其中遇到自己心儀的公司了呢?對吧
偷偷說:反正我是加了好幾個HR小姐姐的微信,看到他們的朋友圈在招聘的時候,我知道,我的成長機會又來了
但是,現在市面上的資料很多,這樣會有一個問題,幾篇面經可能會有很多的重複知識點,100篇面經也無法包含所有知識點,所以在只刷面經的問題就是:重複多、不全面。
這樣的話可能很多的知識點一直在做不同的重複,或者說無用功,爲此,整理1000到面試題,內容涵蓋Spring、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Redis、消息中間件、微服務、Linux等技術點,並且進行了分類的整理
面試題
目錄
學習不要急,穩紮穩打,先來一個目錄看一看
在展示部分面試題大家看一下
MyBatis 面試題
- 什麼是 Mybatis?
- Mybaits 的優點:
- MyBatis 框架的缺點:
- MyBatis 框架適用場合:
- MyBatis 與 Hibernate 有哪些不同?
- {}和${}的區別是什麼?
- 當實體類中的屬性名和表中的字段名不一樣 ,怎麼辦 ?
- 模糊查詢 like 語句該怎麼寫?
- 通常一個 Xml 映射文件,都會寫一個 Dao 接口與之對應,請問,這個 Dao 接口的工作原理是什麼?Dao 接口裏的方法,參數不同時,方法能重載嗎?
- Mybatis 是如何進行分頁的?分頁插件的原理是什麼?
- Mybatis是如何將sql執行結果封裝爲目標對象並返回的?都有哪些映射形式?
- 如何執行批量插入?
- 如何獲取自動生成的(主)鍵值?
- 在 mapper 中如何傳遞多個參數?
- Mybatis 動態 sql 有什麼用?執行原理?有哪些動態 sql?
- Xml 映射文件中,除了常見的 select|insert|updae|delete標籤之外,還有哪些標籤?
- 爲什麼說 Mybatis 是半自動 ORM 映射工具?它與全自動的區別在哪裏?
- 一對一、一對多的關聯查詢 ?
- MyBatis 實現一對一有幾種方式?具體怎麼操作的?
- MyBatis 實現一對多有幾種方式,怎麼操作的?
- Mybatis 是否支持延遲加載?如果支持,它的實現原理是什麼?
- Mybatis 的一級、二級緩存:
- 什麼是 MyBatis 的接口綁定?有哪些實現方式?
- 使用 MyBatis 的 mapper 接口調用時有哪些要求?
- Mapper 編寫有哪幾種方式?
- 簡述 Mybatis 的插件運行原理,以及如何編寫一個插件。
ZooKeeper 面試題
- ZooKeeper 提供了什麼?
- Zookeeper 文件系統
- ZAB 協議?
- 四種類型的數據節點 Znode
- Zookeeper Watcher 機制 -- 數據變更通知
- 客戶端註冊 Watcher 實現
- 服務端處理 Watcher 實現
- 客戶端回調 Watcher
- ACL 權限控制機制
- Chroot 特性
- Zookeeper 下 Server 工作狀態
- 數據同步
- zookeeper 是如何保證事務的順序一致性的?
- 分佈式集羣中爲什麼會有 Master?
- zk 節點宕機如何處理?
- zookeeper 負載均衡和 nginx 負載均衡區別
- Zookeeper 有哪幾種幾種部署模式?
- 集羣最少要幾臺機器,集羣規則是怎樣的?
- 集羣支持動態添加機器嗎?
- Zookeeper 對節點的 watch監聽通知是永久的嗎?爲什麼不是永久的?
- Zookeeper 的 java 客戶端都有哪些?
- 說幾個 zookeeper 常用的命令。
- ZAB 和 Paxos 算法的聯繫與區別?
- Zookeeper 的典型應用場景
Dubbo 面試題
- 爲什麼要用 Dubbo?
- Dubbo 的整體架構設計有哪些分層?
- 默認使用的是什麼通信框架,還有別的選擇嗎?
- 服務調用是阻塞的嗎?
- 一般使用什麼註冊中心?還有別的選擇嗎?
- 默認使用什麼序列化框架,你知道的還有哪些?
- 服務提供者能實現失效提出是什麼原理?
- 服務上線怎麼不影響舊版本?
- 如何解決服務調用鏈過長的問題?
- 說說核心的配置有哪些?
- Dubbo 推薦用什麼協議?
- 同一個服務多個註冊的情況下可以直連某一個服務嗎?
- 畫一畫服務註冊與發現的流程圖?
- Dubbo 集羣容錯有幾種方案?
- Dubbo 服務降級,失敗重試怎麼做?
- Dubbo 使用過程中都遇到了些什麼問題?
- Dubbo Monitor 實現原理?
- Dubbo 用到哪些設計模式?
- Dubbo 配置文件是如何加載到 Spring 中的?
- Dubbo SPI 和 Java SPI 區別?
- Dubbo 支持分佈式事務嗎?
- Dubbo 可以對結果進行緩存嗎?
- 服務上線怎麼兼容舊版本?
- Dubbo 必須依賴的包有哪些?
- Dubbo telnet 命令能做什麼?
- Dubbo 支持服務降級嗎?
- Dubbo 如何優雅停機?
- Dubbo 和 Dubbox 之間的區別?
- Dubbo 和 Spring Cloud 的區別?
- 你還了解別的分佈式框架嗎?
Redis 面試題
- 什麼是 Redis?
- Redis 的數據類型?
- Redis 相比 Memcached 有哪些優勢?
- 使用 Redis 有哪些好處?
- Redis 是單進程單線程的?
- 一個字符串類型的值能存儲最大容量是多少?
- Redis 的持久化機制是什麼?各自的優缺點?
- Redis 常見性能問題和解決方案:
- redis 過期鍵的刪除策略?
- Redis 的回收策略(淘汰策略)?
- 爲什麼 edis 需要把所有數據放到內存中?
- Redis 的同步機制瞭解麼?
- Pipeline 有什麼好處,爲什麼要用 pipeline?
- 是否使用過 Redis 集羣,集羣的原理是什麼?
- Redis 集羣方案什麼情況下會導致整個集羣不可用?
- Redis 支持的 Java 客戶端都有哪些?官方推薦用哪個?
- Jedis 與 Redisson 對比有什麼優缺點?
- 說說 Redis 哈希槽的概念?
- Redis 集羣的主從複製模型是怎樣的?
- Redis 集羣會有寫操作丟失嗎?爲什麼?
- Redis 集羣之間是如何複製的?
- Redis 集羣最大節點個數是多少?
- Redis 集羣如何選擇數據庫?
- 怎麼測試 Redis 的連通性?
- 怎麼理解 Redis 事務?
- Redis key 的過期時間和永久有效分別怎麼設置?
- Redis 如何做內存優化?
- Redis 回收進程如何工作的?
- 都有哪些辦法可以降低 Redis 的內存使用情況呢?
- Redis 的內存用完了會發生什麼?
- 一個 Redis 實例最多能存放多少的 keys?List、Set、Sorted Set 他們最多能存放多少元素?
- MySQL 裏有 2000w 數據,redis 中只存 20w 的數據,如何保證 redis 中的數據都是熱點數據?
- Redis 最適合的場景?
- 假如 Redis 裏面有 1 億個 key,其中有 10w 個 key 是以某個固定的已知的前綴開頭的,如果將它們全部找出來?
- 如果有大量的 key 需要設置同一時間過期,一般需要注意什麼?
- 使用過 Redis 做異步隊列麼,你是怎麼用的?
- 使用過 Redis 分佈式鎖麼,它是什麼回事?
1000道題,就不再這裏一一的進行展現了
每一道題都有對應的回答方案,甚至針對一道題他所衍生出來的問題,也會進行提出和解答,能讓你更好的準備