大家好,這一期呢,我們來談一下Micro services的面試題。
第一題,解釋一下Micro services的架構。
Micro services架構設置,一個應用包含有多個自動化的小服務,通過這些小服務的協同工作來實現一個共同的商業任務。
第2題,Micro services常用的工具有哪些?
wiremock, docker, hysrix
第3題, 什麼是單片架構?
單片架構是指一個應用程序作為一個總的容器包含多個組件, 從而達到完成商業任務的目標。
第4題,Micro service的好處有哪些?
開發Micro services可以使用各種不同的技術。
一個服務的失敗並不會導致整個應用失敗。
對多個小組並行開發非常有利。
可以獨立的配置發佈。
發佈時間會變短。因為你不需要發佈所有的,只需要發佈那些改變的小服務就可以了。
第5題,什麼是spring cloud?
這是個系統集成軟件,用來集成外部系統的。它允許微服務架構的應用限制數據處理的數量。
第6題,解釋一下彙報和控制面板在Micro services環境中的作用。
彙報和控制面板主要是來跟蹤和監視Micro services的運行狀況。有非常多的工具可以做到這些。
第7題,Micro services和單片架構的區別是什麼?
Micro services系統啟動比較快。單片架構服務啟動比較慢。
微服務系統的耦合性比較低。單片架構服務的耦合性非常高。
微系統中一個服務的改變不會影響到其他的,或者整體的應用。單片服務應用,任何一點改動都可能用影響到整體的程序運行。
微服務系統的重點放在產品上,而不是項目上。單片架構服務,更關注於項目本身。
第8題,使用Micro service的挑戰有哪些?
微服務中的子服務都需要相互依賴,這樣子他們就必須要互相之間進行通信。
在分佈式系統中,整個模型的規模比較複雜。
需要專業人員來支持這些服務的配置發佈。
使用微服務的一個很大的開銷,就是相互之間的操作都是通過HTTP來進行的。
第9題,微服務系統適合哪些案例?
微服務系統,理論上講可以適合各式各樣的案例,比如說桌面應用,網絡應用,手機應用,智能電視應用和可穿戴設備應用等等。
第10題,告訴我一些使用微服務系統的著名公司。
像Twitter,net flix,Amazon等公司都從單片服務架構,開始轉向微服務架構。
第11題,微服務系統的特徵有哪些?
必要的信息傳送框架。
去中心化的管理。
簡單基礎架構的自動化。
容錯性設計。
第12題,什麼是restful?
Rest服務旨在提供無狀態的數據傳送。非常適合用於微服務系統。
第13題, 解釋一下微服務系統下的三種測試類型。
底層測試,我們一般做性能和單元測試,這些測試都是自動化的。
中層測試,我們一般進行stress test和usability測試。
頂層測試,主要是做acceptance測試。
第14題,什麼是客戶證書?
客戶證書是用來向遠程服務器進行驗證請求訪問的數字證書。
第15題,解釋一下pack的作用。
它是一個客源工具,允許服務提供商和消費商之間進行測試的交互。會增強微服務應用的可靠性。
第16題,什麼是oAuth?
也就是開放驗證協議。它的基本理念就是,從一個站點分享你的數據到另外一個站點,而不需要你的用戶登錄信息。
第17題,端到端的微服務測試是什麼?
端到端測試是為了保證每一個進程在整個工作流程中能夠工作正常。可以保證整個系統能夠按照需求來提供服務。
第18題,容器在微服務中的作用是什麼?
容器可以使你在微服務中的配置和發佈變得簡單而又高效。你不需要關心太多隻需要把這個docker image跑起來就可以了。
第19題, 微服務中的語義監控是指什麼?
語義監控,是自動化測試的集合,這些測試用來監測你的應用,會讓你找出為什麼你的商業邏輯沒有產生利潤。
第20題,什麼是cdc?
Consumer driven contract. 是微服務系統開發的一個模式,供外部系統使用它們。
第21題,docker的用途是什麼?
docker作為一個容器, 把你的服務打包放在一起。從而大大簡化了配置和發佈的時間開銷。
第22題, 什麼是reactive extensions?
稱為rx。它是一種設計模式,允許把收集到的多個服務的資源合併成一個響應。在分佈式系統中,這是一個非常流行的工具。
第23題,解釋一下什麼是連續性監測。
連續性監測是一種工作方法,用來檢測整個系統,在公司的運營和財務環境中是否健康,包含了人工,程序和工作系統等各個方面的運作。
第24題, 微服務之間是如何獨立的通信的?
是通過HTTP rest json,或者通過binary協議來進行通信的。
閱讀更多 丁哥開講 的文章