面試官心理分析+面試題剖析:消息隊列+Redis 緩存+分佈式系統等等

消息隊列

1、爲什麼使用消息隊列?消息隊列有什麼優點和缺點?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什麼優點和缺點?

2、如何保證消息隊列的高可用?

3、如何保證消息不被重複消費?或者說,如何保證消息消費的冪等性?

4、如何保證消息的可靠性傳輸?或者說,如何處理消息丟失的問題?

5、 如何保證消息的順序性?

6、如何解決消息隊列的延時以及過期失效問題?消息隊列滿了以後該怎麼處理?有幾百萬消息持續積壓幾小時,說說怎麼解決?

7、如果讓你寫一個消息隊列,該如何進行架構設計?說一下你的思路。

在這裏插入圖片描述

搜索引擎

1、 es 的分佈式架構原理能說一下麼(es 是如何實現分佈式的啊)?

2、 es 寫入數據的工作原理是什麼啊?es 查詢數據的工作原理是什麼啊?底層的 lucene 介紹一下唄?倒排索引瞭解嗎?

3、 es 在數據量很大的情況下(數十億級別)如何提高查詢效率啊?

4、 es 生產集羣的部署架構是什麼?每個索引的數據量大概有多少?每個索引大概有多少個分片?

在這裏插入圖片描述

Redis 緩存

1、 項目中緩存是如何使用的?爲什麼要用緩存?緩存使用不當會造成什麼後果?

2、redis 和 memcached 有什麼區別?redis 的線程模型是什麼?爲什麼 redis 單線程卻能支撐高併發?

3、redis 都有哪些數據類型?分別在哪些場景下使用比較合適?

4、 redis 的過期策略都有哪些?內存淘汰機制都有哪些?手寫一下 LRU 代碼實現?

5、如何保證 redis 的高併發和高可用?redis 的主從複製原理能介紹一下麼?redis 的哨兵原理能介紹一下麼?

6、redis 的持久化有哪幾種方式?不同的持久化機制都有什麼優缺點?持久化機制具體底層是如何實現的?

7、redis 集羣模式的工作原理能說一下麼?在集羣模式下, redis 的 key 是如何尋址的?分佈式尋址都有哪些算法?瞭解一致性 hash 算法嗎?

8、瞭解什麼是 redis 的雪崩、穿透和擊穿?redis 崩潰之後會怎麼樣?系統該如何應對這種情況?如何處理 redis 的穿透?

9、 如何保證緩存與數據庫的雙寫一致性?

10、redis 的併發競爭問題是什麼?如何解決這個問題?瞭解redis 事務的 CAS 方案嗎?

11、生產環境中的 redis 是怎麼部署的?

在這裏插入圖片描述

分庫分表

1、 爲什麼要分庫分表(設計高併發系統的時候,數據庫層面該如何設計)?用過哪些分庫分表中間件?不同的分庫分表中間 件都有什麼優點和缺點?你們具體是如何對數據庫如何進行垂 直拆分或水平拆分的?

2、現在有一個未分庫分表的系統,未來要分庫分表,如何設計纔可以讓系統從未分庫分表動態切換到分庫分表上?

3、如何設計可以動態擴容縮容的分庫分表方案?

4、分庫分表之後,id 主鍵如何處理?

在這裏插入圖片描述

讀寫分離

1、你們有沒有做 MySQL 讀寫分離?如何實現 MySQL 的讀寫分離?MySQL 主從複製原理的是啥?如何解決MySQL 主從同步的延時問題?

2、如何設計一個高併發系統?

面試官心理分析+面試題剖析:消息隊列+Redis 緩存+分佈式系統等
分佈式系統
1、說一下的 dubbo 的工作原理?註冊中心掛了可以繼續通信嗎?說說一次 rpc 請求的流程?

2、dubbo 支持哪些通信協議?支持哪些序列化協議?說一下Hessian 的數據結構?PB 知道嗎?爲什麼 PB 的效率是最高的?

3、 dubbo 負載均衡策略和集羣容錯策略都有哪些?動態代理策略呢?

4、 dubbo 的 spi 思想是什麼?

5、 如何基於 dubbo 進行服務治理、服務降級、失敗重試以及超時重試?

6、 分佈式服務接口的冪等性如何設計(比如不能重複扣款)?

7、分佈式服務接口請求的順序性如何保證?

8、如何自己設計一個類似 Dubbo 的 RPC 框架?

9、 zookeeper 都有哪些使用場景?

10、 一般實現分佈式鎖都有哪些方式?使用 redis 如何設計分佈式鎖?使用 zk 來設計分佈式鎖可以嗎?這兩種分佈式鎖的實現方式哪種效率比較高?

11、 分佈式事務瞭解嗎?你們是如何解決分佈式事務問題的?

12、集羣部署時的分佈式 session 如何實現?

在這裏插入圖片描述

高可用架構

1、Hystrix 介紹

2、基於 Hystrix 線程池技術實現資源隔離

3、基於 Hystrix 信號量機制實現資源隔離

4、Hystrix 隔離策略細粒度控制

5、基於 request cache 請求緩存技術優化批量商品數據查詢接口

6、基於本地緩存的 fallback 降級機制

7、深入 Hystrix 斷路器執行原理

8、深入 Hystrix 線程池隔離與接口限流

9、基於 timeout 機制爲服務接口調用超時提供安全保護

10、如何限流?在工作中是怎麼做的?說一下具體的實現?

11、如何做技術選型?Sentinel 還是 Hystrix?

在這裏插入圖片描述

SpringCloud 微服務架構

1、什麼是 Spring Cloud?

2、使用 Spring Cloud 有什麼優勢?

3、服務註冊和發現是什麼意思?Spring Cloud 如何實現?

4、負載平衡的意義什麼?

5、什麼是 Hystrix?它如何實現容錯?

6、什麼是 Hystrix 斷路器?我們需要它嗎?

7、什麼是 Netflix Feign?它的優點是什麼?

8、什麼是 Spring Cloud Bus?我們需要它嗎?

在這裏插入圖片描述
添加Q羣:471467922 備註csdn,即可免費領取。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章