• <dd id="t1uxj"></dd>

  • <legend id="t1uxj"><pre id="t1uxj"></pre></legend>

    <small id="t1uxj"><strike id="t1uxj"><p id="t1uxj"></p></strike></small>
  • <dd id="t1uxj"><noscript id="t1uxj"></noscript></dd>

      <rp id="t1uxj"></rp>
      <th id="t1uxj"></th>
      1. feign和ribbon區別

        zifan 問答 2019-09-02 09:37:04 閱讀(...)

        feignribbonSpring CloudNetflix 中提供的兩個實現軟負載均衡的組件,Ribbon 和 Feign 都是用于調用其他服務的,方式不同。Feign 則是在 Ribbon 的基礎上進行了一次改進,采用接口的方式,將需要調用的其他服務的方法定義成抽象方法即可,不需要自己構建 http 請求。不過要注意的是抽象方法的注解、方法簽名要和提供服務的方法完全一致。

        負載均衡 Load Balancing

        1.啟動類使用的注解不同,Ribbon 用的是@RibbonClient,Feign 用的是@EnableFeignClients。

        2.服務的指定位置不同,Ribbon 是在@RibbonClient 注解上聲明,Feign 則是在定義抽象方法的接口中使用@FeignClient 聲明。

        3.調用方式不同,Ribbon 需要自己構建 http 請求,模擬 http 請求然后使用 RestTemplate 發送給其他服務,步驟相當繁瑣。

        Feign

        Feign 是在 Ribbon 的基礎上進行了一次改進,是一個使用起來更加方便的 HTTP 客戶端。采用接口的方式, 只需要創建一個接口,然后在上面添加注解即可 ,將需要調用的其他服務的方法定義成抽象方法即可, 不需要自己構建 http 請求。然后就像是調用自身工程的方法調用,而感覺不到是調用遠程方法,使得編寫 客戶端變得非常容易。

        Ribbon

        Ribbon 是一個基于 HTTP 和 TCP 客戶端 的負載均衡的工具。它可以 在客戶端 配置 RibbonServerList(服務端列表),使用 HttpClient 或 RestTemplate 模擬 http 請求,步驟相當繁瑣。

        收藏 0個人收藏
        走進科技生活方式

        發表評論

        登錄后參與評論
        阿里巴巴导航