最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring?Cloud?Alibaba負(fù)載均衡實(shí)現(xiàn)方式

 更新時(shí)間:2022年10月08日 16:40:46   作者:請叫我黃同學(xué)  
這篇文章主要為大家介紹了Spring?Cloud?Alibaba負(fù)載均衡實(shí)現(xiàn)方式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

一、負(fù)載均衡的兩種方式

服務(wù)器端負(fù)載均衡

傳統(tǒng)的方式前端發(fā)送請求會(huì)到我們的的nginx上去,nginx作為反向代理,然后路由給后端的服務(wù)器,由于負(fù)載均衡算法是nginx提供的,而nginx是部署到服務(wù)器端的,所以這種方式又被稱為服務(wù)器端負(fù)載均衡。

客戶端側(cè)負(fù)載均衡

現(xiàn)在有三個(gè)實(shí)例,內(nèi)容中心可以通過discoveryClient 獲取到用戶中心的實(shí)例信息,如果我們再訂單中心寫一個(gè)負(fù)載均衡的規(guī)則計(jì)算請求那個(gè)實(shí)例,交給restTemplate進(jìn)行請求,這樣也可以實(shí)現(xiàn)負(fù)載均衡,這個(gè)算法里面,負(fù)載均衡是有訂單中心提供的,而訂單中心相對于用戶中心是一個(gè)客戶端,所以這種方式又稱為客戶端負(fù)負(fù)載均衡。

二、手寫一個(gè)客戶端側(cè)負(fù)載均衡器

◆隨機(jī)選擇實(shí)例

@Autowired
private DiscoveryClient discoveryClient;
@GetMapping("/order/create")
public String createOrder(Integer productId,Integer userId){
    List<ServiceInstance> instances = discoveryClient.getInstances("msb-stock");
    List<String> targetUrls = instances.stream()
        // 數(shù)據(jù)變換
        .map(instance -> instance.getUri().toString() + "/stock/reduce")
        .collect(Collectors.toList());
    int i = ThreadLocalRandom.current().nextInt(targetUrls.size());
    String targetUrl = targetUrls.get(i);
    log.info("請求求目標(biāo)地址:{}",targetUrl);
    String result = restTemplate.getForObject(targetUrl +"/"+ productId, String.class);
    log.info("進(jìn)行減庫存:{}",result);
    return "下單成功";
}

三、使用Ribbon實(shí)現(xiàn)負(fù)載均衡

Ribbon是什么? Netflix開源的客戶端側(cè)負(fù)載均衡器

更加直觀說就是ribbon就是簡化我們這段代碼的小組件,不過他比我們的代碼要強(qiáng)大一些,他給他們提供了豐富的負(fù)載均衡算法。

引入ribbon :三步驟: 加依賴,啟動(dòng)注解,寫配置

不需要加,nacosdiscovery,已經(jīng)給添加了依賴,

寫注解,需要寫到RestTemplate上面。

第三步:寫配置

沒有配置。

改造我們的請求:

url:改為 下面 當(dāng)請求發(fā)送的發(fā)送的時(shí)候ribbon會(huì)將nx-us進(jìn)行轉(zhuǎn)化為我們nacos里面中的地址。并且進(jìn)行負(fù)載均衡算法,進(jìn)行請求,

以上就是Spring Cloud Alibaba負(fù)載均衡實(shí)現(xiàn)方式的詳細(xì)內(nèi)容,更多關(guān)于Spring Cloud Alibaba負(fù)載均衡的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 使用Spring源碼報(bào)錯(cuò)java:找不到類 InstrumentationSavingAgent的問題

    使用Spring源碼報(bào)錯(cuò)java:找不到類 InstrumentationSavingAgent的問題

    這篇文章主要介紹了使用Spring源碼報(bào)錯(cuò)java:找不到類 InstrumentationSavingAgent的問題,本文給大家分享解決方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • SpringBoot使用spring retry重試機(jī)制的操作詳解

    SpringBoot使用spring retry重試機(jī)制的操作詳解

    實(shí)際工作中由于網(wǎng)絡(luò)波動(dòng)等原因?qū)е麓a執(zhí)行失敗需要重新執(zhí)行,保證最終能夠完成業(yè)務(wù)功能,通常來說,會(huì)用try/catch,while循環(huán)或者定時(shí)任務(wù)重處理,但是這樣的做法缺乏統(tǒng)一性,要多寫很多代碼,spring-retry組件可以通過注解優(yōu)雅的實(shí)現(xiàn)重處理功能
    2024-12-12
  • idea2019導(dǎo)入maven項(xiàng)目中的某些問題及解決方法

    idea2019導(dǎo)入maven項(xiàng)目中的某些問題及解決方法

    這篇文章主要介紹了idea2019導(dǎo)入maven項(xiàng)目中的某些問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • java實(shí)現(xiàn)線性表及其算法

    java實(shí)現(xiàn)線性表及其算法

    線性表是最簡單和最常用的一種數(shù)據(jù)結(jié)構(gòu),它是有n個(gè)體數(shù)據(jù)元素(節(jié)點(diǎn))組成的有限序列,這篇文章主要介紹了java實(shí)現(xiàn)線性表及其算法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Spring AOP的底層實(shí)現(xiàn)方式-代理模式

    Spring AOP的底層實(shí)現(xiàn)方式-代理模式

    這篇文章主要介紹了Spring AOP的底層實(shí)現(xiàn)方式-代理模式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • java 線程池的實(shí)現(xiàn)方法

    java 線程池的實(shí)現(xiàn)方法

    在本篇文章里小編給大家整理了關(guān)于java 線程池的實(shí)現(xiàn)方法,有興趣的朋友們可以學(xué)習(xí)參考下。
    2020-02-02
  • java中設(shè)計(jì)模式之適配器模式

    java中設(shè)計(jì)模式之適配器模式

    這篇文章主要介紹了java中設(shè)計(jì)模式之適配器模式的相關(guān)資料,適配器模式將一個(gè)類的接口轉(zhuǎn)換成客戶期望的另一個(gè)接口。適配器讓原本不兼容的類可以合作得親密無間,需要的朋友可以參考下
    2017-09-09
  • Spark學(xué)習(xí)筆記 (二)Spark2.3 HA集群的分布式安裝圖文詳解

    Spark學(xué)習(xí)筆記 (二)Spark2.3 HA集群的分布式安裝圖文詳解

    這篇文章主要介紹了Spark2.3 HA集群的分布式安裝,結(jié)合圖文與實(shí)例形式詳細(xì)分析了Spark2.3 HA集群分布式安裝具體下載、安裝、配置、啟動(dòng)及執(zhí)行spark程序等相關(guān)操作技巧,需要的朋友可以參考下
    2020-02-02
  • SpringBoot前后端分離跨域問題:狀態(tài)碼403拒絕訪問解決辦法

    SpringBoot前后端分離跨域問題:狀態(tài)碼403拒絕訪問解決辦法

    這篇文章主要給大家介紹了關(guān)于SpringBoot前后端分離跨域問題:狀態(tài)碼403拒絕訪問的解決辦法,403是被服務(wù)器拒絕了,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • Java中File類方法詳解以及實(shí)踐

    Java中File類方法詳解以及實(shí)踐

    Java File類的功能非常強(qiáng)大,利用java基本上可以對文件進(jìn)行所有操作,下面這篇文章主要給大家介紹了關(guān)于Java中File類方法以及實(shí)踐的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04

最新評論

南召县| 揭阳市| 溧阳市| 新源县| 许昌市| 罗平县| 日土县| 和顺县| 西乌| 大田县| 田林县| 沂源县| 桐乡市| 舞阳县| 静海县| 方山县| 通河县| 青阳县| 三原县| 白水县| 海宁市| 靖宇县| 麻江县| 青神县| 白城市| 渝中区| 岗巴县| 綦江县| 武夷山市| 津市市| 尉氏县| 洞头县| 璧山县| 武乡县| 罗平县| 页游| 西安市| 康平县| 白朗县| 搜索| 盖州市|