更新時間:2023-02-14 16:10:53 來源:動力節點 瀏覽1876次
1.Eureka中幾個時間
服務注冊:
eureka.client.register-with-erueka=true 消費者和生產者,需要把自己注冊到Eureka服務器中,設置true。默認值就是true
eureka.client.register-with-erueka=true 注冊中心自己 設置為false
服務續約(renew):
lease-renewal-interval-in-seconds:服務續約(renew)的間隔,默認為30秒 客戶端心跳時間
lease-expiration-duration-in-seconds:服務失效時間,默認值90秒 服務注冊超時時間 如果超時認為失效的服務
拉取服務列表:
eureka.client.registry-fetch-interval-seconds=30 消費者定期30秒 拉取一次服務緩存到本地
Eureka服務器服務失效剔除時間:
eureka.server.eviction-interval-timer-in-ms=60 因此它會開啟一個定時任務,每隔60秒對所有失效的服務進行剔除。
2.Ribbon概述
Srping Cloud ribbon是基于Netfix Ribbo實現的一套客戶端 負債均衡工具
Ribbon是Netflix發布的開源項目,主要功能是提供客戶端的軟件負載均衡算法,將Netflix的中間層服務連接在一起。Ribbon客戶端組件提供一系列完善的配置項如連接超時,重試等。簡單的說,就是在配置文件中列出Load Balancer(簡稱LB)后面所有的機器,Ribbon會自動的幫助你基于某種規則(如簡單輪詢,隨機連接等)去連接這些機器。我們也很容易使用Ribbon實現自定義的負載均衡算法。
3.Ribbon常見的負載均衡算法
4.什么是feigin?它的優點是什么?
1.feign采用的是基于接口的注解
2.feign整合了ribbon,具有負載均衡的能力
3.整合了Hystrix,具有熔斷的能力
使用:
1.添加pom依賴。
2.啟動類添加@EnableFeignClients
3.定義一個接口@FeignClient(name=“xxx”)指定調用哪個服務
5.Ribbon和Feign的區別?
1.Ribbon都是調用其他服務的,但方式不同。
2.啟動類注解不同,Ribbon是@RibbonClient feign的是@EnableFeignClients
3.服務指定的位置不同,Ribbon是在@RibbonClient注解上聲明,Feign則是在定義抽象方法的接口中使用@FeignClient聲明。
4.調用方式不同,Ribbon需要自己構建http請求,模擬http請求然后使用RestTemplate發送給其他服務,步驟相當繁瑣。Feign需要將調用的方法定義成抽象方法即可。
6.Ribbon 原理
底層的話,使用HTTP通信的框架組件,HttpClient,先得使用Ribbon去本地的Eureka注冊表的緩存里獲取出來對方機器的列表,然后進行負載均衡,選出一臺機器,接著針對那臺機器發送 Http請求過去即可
7.Feign 原理
在配置類上,加上@EnableFeginClients,那么該注解是基于@Import注解,注冊有關Fegin的解析注冊類,這個類是實現 ImportBeanDefinitionRegistrar 這個接口,重寫registryBeanDefinition 方法。他會掃描所有加了@FeginClient 的接口,然后針對這個注解的接口生成動態代理,然后你針對fegin的動態代理去調用他方法的時候,此時會在底層生成http協議格式的請求。
8.說一下自己公司的服務注冊中心怎么技術選型的?生產環境中應該怎么優化?
• 可用性
• 時效性
• 數據一致性 CP AP
• 容量
通過集群保證可用性
9.Spring Cloud Netflix下常用組件:
Netflix開源組件集成,包括Eureka、Hystrix、Ribbon、Feign、Zuul等核心組件。
Eureka:服務治理組件,包括服務端的注冊中心和客戶端的服務發現機制;
Ribbon:負載均衡的服務調用組件,具有多種負載均衡調用策略;
Hystrix:服務容錯組件,實現了斷路器模式,為依賴服務的出錯和延遲提供了容錯能力;
Feign:基于Ribbon和Hystrix的聲明式服務調用組件;
Zuul:API網關組件,對請求提供路由及過濾功能。
以上就是“2023年精選出來的ribbon面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習