JAVA後端面試《SpringCloud》

1.什麼是微服務?

  • 微服務化的核心就是將傳統的一站式應用,根據業務拆分成一個一個服務,徹底的解耦,每一個微服務提供單個業務功能的服務,一個服務做一件事,從技術角度看就是一種小而獨立的處理過程,類似進程的概念,能夠自行啓動或者銷燬,一般都擁有自己的數據庫。

2.微服務架構的優點?

  • ① 每個服務足夠內聚,足夠小,代碼容易理解,這樣能聚焦於一個指定的業務功能或者業務需求。
  • ② 開發簡單,開發效率提高,專門的服務幹專門的事。
  • ③ 低耦合,無論是開發階段或者是部署階段都是獨立的。
  • ④ 方便和第三方集成,微服務允許容易且靈活的方式集成自動部署,通過持續集成工具,如Jekins,Hudson等。
  • ⑤ 每個微服務都有自己的存儲能力,都可以有自己的數據庫。

3.微服務架構的缺點?

  • ① 開發人員要處理分佈式系統的複雜性。
  • ② 多服務運維難度,隨着服務的增加,運維的壓力也會增大。
  • ③ 多個服務之間數據一致性的問題。

4.SpringCloud和SpringBoot的關係?

  • ① SpringBoot專注於快速,方便的開發單個微服務實體。
  • ② SpringCloud關注的是全局的服務治理。

5.SpringCloud和Dubbo的區別?

在這裏插入圖片描述

  • ① 最大的區別:SpringCloud拋棄了Dubbo的RPC通信方式,採用的是基於HTTP的REST方式。
    • 嚴格來說,者兩種方式各有優劣。雖然從一定程度上來說,後者犧牲了服務的調用性能,但是也避免了上面提供的原生RPC帶來的問題。而且Rest相比RPC更爲靈活,服務提供方和服務調用方不存在代碼級別的強依賴,在微服務環境下,顯得更加何時。
  • ② 品牌機和組裝機的區別。
    • SpringCloud的功能比Dubbo更加強大,涵蓋面更廣,它能夠和Spring,SpringBoot,Spring data等完美融合,這對於微服務是直觀重要的。SpringCloud就是品牌機,在Spring資源的整合下,做了大量的兼容性測試,保證了機器擁有更高的穩定性。而Dubbo更像是一臺組裝機,各環節的選擇自由度很高,但是最終整合結果可能會出現問題。
  • ③ 最爲重要的是Dubbo已經停更了5年左右,對於技術發展的新需求,需要開發者自行拓展和升級。

6.SpringCloud總結圖

在這裏插入圖片描述

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