分布式系統(tǒng)微服務相關面試_第1頁
分布式系統(tǒng)微服務相關面試_第2頁
分布式系統(tǒng)微服務相關面試_第3頁
分布式系統(tǒng)微服務相關面試_第4頁
分布式系統(tǒng)微服務相關面試_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

架構設計相什么是分布式系統(tǒng),什么是微服RPC和RPC框序列化方式及作分布式系統(tǒng)中事務的系高可服務調用的負載均分布式配置中服 與發(fā)現(xiàn)機分布式系統(tǒng)如何拆權限校驗方微服務網各服務之間如何調如何保證服務健康的容錯機SpringCloud中的服 與發(fā)現(xiàn)機如 中心集群都掛掉,發(fā)布者和訂閱者之間還能通信么dubbo連 中心和直連的區(qū)dubbo服務的容錯具體問題示例1:關于服務調用服務提供者能實現(xiàn)失效踢出是什么dubbo通訊協(xié)大概率的問架構設計什么是分布式系統(tǒng),什么是微服RPC和RPC框123456常見RPC框架有序列化方式及1234#json,jdkserializable,Hessian,Dubbo,5分布式系統(tǒng)中事務XA(數(shù)據(jù)庫廠商實現(xiàn)BASE(BasicallyAvailable(基本可用),Softstate(軟狀態(tài)ACID(Atomic原子性,Consistency3.3.通過消息隊列,實現(xiàn)最終一致(確保消息到達MQ,冪等性4TCC機制 系1鏈2Spring‐Cloud‐Sleuth+3Sleuth收集微服務之間的接口調用信息以及內部方法調用。通過采樣之后,將數(shù)Zipkin,由Zipkin負責和可視化查詢4#概念:Trace,Span。公開課有講過56日781)ElasticSearch搜索服務器,提供了一個分布式多用戶能力的全文搜索引擎RESTfulweb接口92)Logstash是可以對日志進行收集、過濾、分析,并將其供以后使用3)Kibana是Elasticsearch前端展示工具,LogstashElasticSearch提的日志分析友好的Web界面,可以幫助您匯總、分析和搜索重要數(shù)據(jù)搭建方式參考資料 代碼性Metrics:度量;我們需要為某個系統(tǒng)某個服務做、做統(tǒng)計,就需要用到代碼執(zhí)行的吞吐量,響應時間,并發(fā)量,瞬時#這個需要通過代碼埋點實現(xiàn),公開課有講過Metrics+Grafana構建性能平臺高可服服務的高可用可以通過多實例,自檢測,自恢復,快速擴容機制來實自檢測:系統(tǒng)預留健康檢查接口,通過docker集群模式的健康檢查機制來實現(xiàn)自; 容對于硬件資源,需要結合云計算技術675412388服務調用的負載1#服務端負載均衡:對客戶端具體的接口地址,對外僅負載均衡器,所有請求經2345#客戶端負載均衡:由客戶端自己選擇目標服務器,直調對應的地址;dubbo(6789分布式配置中我們著重講了我們著重講了springcloudconfig 均 Disconf,淘寶類似產品有很多:36012345服務與發(fā)現(xiàn)機服務服務:服務提供者啟動實例時,將信息到服務發(fā)現(xiàn):服務消費者,通過服務名在中心的信息中查詢出具體的服務提供者實例信1234分布式系統(tǒng)如何拆1212技術棧技術棧34服務,緩存服務,服務,緩存服務,MQ服務,搜索引擎服務;架構分層(微服務是如何保護 1通過Https實現(xiàn)信息傳輸?shù)募用?nginx,tomcat都可以配置2對代碼侵入性很小。因為微服務集群不直接對外提供服務,由統(tǒng)一的網關來提供業(yè)務zuul,nginx都可以的)單點登##每個應用都必須接入單點登錄,大型系統(tǒng)中,需要集成單點登錄帶來的復雜工作和性能損分布式session方1流程:客戶端‐>獲取session‐>請求微服務‐>查詢共享中信息‐>校權限提供服務給予響23分布式session保存方案,根據(jù)session去查找共享中對應的權限信息來實現(xiàn)權限驗45#共享的高可用和安全性是個問題,類似直接redis,memcache來做token方11客戶端uaa認證獲取22客戶端微服務校驗334token包含必要的信息,一次獲取,多次使用,相對獨立,實現(xiàn)簡單,不需要長度有限,不能撤銷,需要設置過期5#可以在網關層做;也可以構建成通用的組件,放在每個微服務上面6#根據(jù)不同的業(yè)務場景:token可以一次,也可以在每次請求的時候去申請,這樣能實現(xiàn)分控需要的賬戶禁用,等功7微服務網1zuul是springcloud提供的成路由方案;根據(jù)請求的路徑不同,網關會定位到指定微服務,并請求到不同的微服務接口;對外了微服務接口調用的復雜性2三個重要概念:動態(tài)路由表,路由定位,反3反向:客戶端請求到網關,網關受理后,再對目標服務發(fā)起請求,拿到響應之后,再應給客戶4動態(tài)路由表:zuul支持eureka路由,手動配置的路由,這兩種都支持動態(tài)更5路由定位:根據(jù)請求路徑,zuul有一套自身的服務定位規(guī)則以及路由匹配的表達67#應用場景:對外,權限校驗,服務聚合,日志審8各服務之間如何1服務對外以http接口形式,所以調用有多種方式2Fegin是cloud提供的一種服務調用3Resttemte也可以快速的發(fā)起服務調用4同時,也可以手動獲取對應接口的具體地址,通過平常的http進行調用5#Feign和Resttemte都可以集成負載均衡,失敗重試,熔斷的功能如何保證服務健康1/health來查看應用的健康狀2SpringBoot在集成很多組件時,都會實現(xiàn)一個健康檢查的接等34564.在通過docker部署微服務時,我們可以利用docker的健康檢查機制,實現(xiàn)服務的重啟7容錯機Ribbon負載均衡&重 Hystrix熔斷限流,降級,熔斷 #通過命令模式的封裝,SpringCloud內部自動集成,且可作用于任意JAVA方法上,不心方法的具體實現(xiàn)。代表著(http、redis、db操作都可以做熔斷SpringCloud中的服務與發(fā)現(xiàn)機1,2server提供httpapi服務,服務實例的信息,并且具備主動剔除服務(心跳檢測)server高可用的功3集成在具體的微服務中,在服務啟動時,將服務實例信息post到server也會定時同步server上面其他service4#eureka的工作大多是thread在定時工作,任務執(zhí)行的間隔時間都可以通過配置文進行配置SpringCloud的實施11集成SpringMVC項2微服務改造的過渡期,在傳統(tǒng)的SpringMvc項目中,引入部分SpringCloud的特性,即可過微改造變成微服34#其他語言的項目加入SpringCloud微服務系5Eureka提供HttpApi,使得非java語言加入到SpringCloud微服務集群成6有緩存1234dubbo連接中心和直連的區(qū)1中心:方式繞過中心直連指2dubbo服務的1#2FailoverCluster:失敗自動切換,當出現(xiàn)失敗,重試其它服務器,默認兩3FailfastCluster:失敗立即報4FailsafeCluster:失敗安全,出現(xiàn)異常時,直接5FailbackCluster:失敗自動恢復,記錄失敗請求,定時重6ForkingCluster:并行調用多個服務器,只要一個成功即返回。通常用于實時性要高的讀操作,但需要浪費服務資7BroadcastCluster:播調用所有提供者,逐個調用,任意一臺報錯則8#要注意分布式具體問題示例1:關于服務##超時是針對消費端還是服務2234567服務提供者能實現(xiàn)失效踢出是什么1源碼參考RegistryService2#redis‐臟數(shù)據(jù)由中心刪3#zookeeper‐dubbo通訊協(xié)1#23#4頭部信息(調用控制協(xié)議16B)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論