分布式系統的面試題1


 

我之前有一些同學,之前呢主要是做傳統行業,外包項目,互聯網公司,一直是那種小的公司,技術一直都搞的比較簡單。共同的一個問題,就是都沒怎么搞過分布式系統,現在互聯網公司,一般都是做分布式的系統,大家都不是做底層的分布式系統,分布式存儲系統,hadoop hdfs,分布式計算系統,hadoop mapreducespark,分布式流式計算系統,storm

 

分布式業務系統,把原來用java開發的一個大塊系統,給拆分成多個子系統,多個子系統之間互相調用,形成一個大系統的整體。假設原來你做了一個OA系統,里面包含了權限模塊、員工模塊、請假模塊、財務模塊,一個工程,里面包含了一堆模塊,模塊與模塊之間會互相去調用,1台機器部署。

 

現在如果你把他這個系統給拆開,權限系統,員工系統,請假系統,財務系統,4個系統,4個工程,分別在4台機器上部署

 

一個請求過來,完成這個請求,這個員工系統,調用權限系統,調用請假系統,調用財務系統,4個系統分別完成了一部分的事情,最后4個系統都干完了以后,才認為是這個請求已經完成了。

 

 

到底什么是分布式系統?

 

1.1 為什么要進行系統拆分?

1)為什么要進行系統拆分?如何進行系統拆分?拆分后不用dubbo可以嗎?dubbothrift有什么區別呢?

1.2 分布式服務框架

1)說一下的dubbo的工作原理?注冊中心掛了可以繼續通信嗎?

 

2dubbo支持哪些序列化協議?說一下hessian的數據結構?PB知道嗎?為什么PB的效率是最高的?

 

3dubbo負載均衡策略和高可用策略都有哪些?動態代理策略呢?

 

4dubbospi思想是什么?

 

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

 

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

 

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

 

8)如何自己設計一個類似dubborpc框架?

 

但是這兩年開始興起和流行了spring cloud,但是我們這里就不講了,spring cloud剛開始流行,還沒有普及,目前普及的是dubbo,出去面試,大部分面試官都是問你dubbo的一些問題

1.3 分布式鎖

1)使用redis如何設計分布式鎖?使用zk來設計分布式鎖可以嗎?這兩種分布式鎖的實現方式哪種效率比較高?

1.4 分布式事務

1)分布式事務了解嗎?你們如何解決分布式事務問題的?TCC如果出現網絡連不通怎么辦?XA的一致性如何保證?

1.5 分布式會話

1)集群部署時的分布式session如何實現?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM