日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微服务相关面试题

發布時間:2023/12/31 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微服务相关面试题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是微服務

將傳統的一站式應用,根據業務拆分成一個一個的服務,徹底的去耦合,每一個微服務提供單個業務功能的服務,一個服務做一件事

從技術角度看,就是一種小而獨立的處理過程,類似進程概念,能夠自行單獨啟動或銷毀,擁有自己獨立的數據庫

每一個微服務都可以使用不同的語言編寫服務,也可以使用不同的數據存儲

2、微服務之間是如何獨立通訊的

3、Spring Cloud和Dubbo有哪些區別

①通訊機制不同,Dubbo是RPC,Cloud是Restful API;

②Dubbo不支持多語言,Cloud支持多語言

Cloud支持配置服務(Netflix Archaius和Spring Cloud Config)

Cloud支持服務調用鏈監控(Zuul)

⑤服務跟蹤(SpringCloudSleuth)、消息總線(Spring Cloud Bus)、任務流(Spring Cloud Stream)、批量任務(Spring Cloud Task),以上這些Dubbo都不支持

4、對Spring boot和Spring Cloud的理解

Spring Cloud基于Spring boot提供了一套微服務解決方案,包括服務注冊與發現,配置中心,全鏈路監控,服務網關,負載均衡,熔斷器等組件,除了基于Netflix的開源組件做高度抽象封裝之外,還有一些選型中立的開源組件。

SpringCloud利用Springboot的開發便利性巧妙的簡化了分布式系統基礎設施的開發,SpringCloud為開發人員提供了快速構建分布式系統的一些工具,包括配置管理、服務發現、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分布式會話等等,它們都可以利用Spring boot的開發風格做到一鍵啟動和部署

Springboot并沒有重復造輪子,它只是將各家公司開發的比較成熟,經得起實際考驗的服務框架組合起來,通過Springboot風格進行再封裝,屏蔽掉了復雜的配置和實現原理,最終給開發者留出了一套簡單易懂,易部署和易維護的分布式系統開發工具包

Spring boot專注于快速方便的開發單個個體微服務

SpringCloud是關注全局的微服務協調治理框架,它將Spring boot開發的一個個單體微服務整合管理起來,為各個微服務之間提供配置管理、服務發現、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分布式會話等等集成服務

Springboot可以離開Spring Cloud獨立使用開發項目,但是SpringCloud離不開Spring boot,屬于依賴關系

5、什么是服務熔斷?什么是服務降級?

6、微服務的優缺點是什么?說下你在項目中碰到的坑

優點:

每個服務足夠內聚,足夠小,代碼容易理解,這樣能聚焦一個指定的業務功能和業務需求

開發簡單,開發效率提高,一個服務可能就是專一的只干一件事

能夠被小團隊單獨開發

解耦合

能使用不同的語言開發

微服務只是業務邏輯的代碼,不會和HTML、CSS或者其它界面組件混合

每個微服務都有自己的儲存能力,可以有自己的數據庫,也可以有統一的數據庫

缺點:

開發人員要處理分布式系統的復雜性

多服務運維難度大

系統部署依賴

服務間通訊成本

數據一致性

系統繼承測試

性能監控

7、你所知道的微服務技術棧有哪些?請列舉一二

微服務條目落地技術備注
服務開發Springboot、Spring、SpringMVC
服務配置與管理Netflix公司的Archaius、阿里的Diamond等
服務注冊與發現Eureka、Consul、Zookeeper
服務調用Rest、RPC、gRPC
服務熔斷器Hystric、Envoy等
負載均衡Ribbon、Nginx
服務接口調用(客戶端調用服務的簡化工具)Foreign
消息隊列Kafka、Rabbit MQ、Active MQ
服務配置中心管理SpringCloudConfig、Chef等
服務路由(API網關)Zuul
服務監控Zabbix、Nagios、Metrics、Spectator等
全鏈路追蹤Zipkin、Brave、Dapper等
服務部署Docker、OpenStack、Kubernetes等
數據流操作開發包SpringCloud Stream(封裝與Redis、Rabbit、Kafka等發送接收消息)
事件消息總線Spring Cloud Bus

8、eureka和zookeeper都可以提供服務注冊與發現的 功能,請說說兩個的區別?

在著名的CAP理論中,一個分布式系統不可能同時滿足C(一致性)、A(可用性)、P(分區容錯性),由于分區容錯性P在分布式系統中是必須要保證的,因此我們必須要在A和C之間權衡

Zookeeper保證的是CP,

Eureka保證的是AP

因此Eureka可以很好的應對因網絡故障導致部分節點失去聯系的情況,而不會像Zookeeper那樣使整個注冊服務癱瘓

總結

以上是生活随笔為你收集整理的微服务相关面试题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。