国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

3.Eureka注冊中心

這篇具有很好參考價值的文章主要介紹了3.Eureka注冊中心。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

3.Eureka注冊中心

假如我們的服務(wù)提供者user-service部署了多個實例,如圖:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

大家思考幾個問題:

  • order-service在發(fā)起遠(yuǎn)程調(diào)用的時候,該如何得知user-service實例的ip地址和端口?
  • 有多個user-service實例地址,order-service調(diào)用時該如何選擇?
  • order-service如何得知某個user-service實例是否依然健康,是不是已經(jīng)宕機(jī)?

3.1.Eureka的結(jié)構(gòu)和作用

這些問題都需要利用SpringCloud中的注冊中心來解決,其中最廣為人知的注冊中心就是Eureka,其結(jié)構(gòu)如下:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

回答之前的各個問題。

問題1:order-service如何得知user-service實例地址?

獲取地址信息的流程如下:

  • user-service服務(wù)實例啟動后,將自己的信息注冊到eureka-server(Eureka服務(wù)端)。這個叫服務(wù)注冊
  • eureka-server保存服務(wù)名稱到服務(wù)實例地址列表的映射關(guān)系
  • order-service根據(jù)服務(wù)名稱,拉取實例地址列表。這個叫服務(wù)發(fā)現(xiàn)或服務(wù)拉取

問題2:order-service如何從多個user-service實例中選擇具體的實例?

  • order-service從實例列表中利用負(fù)載均衡算法選中一個實例地址
  • 向該實例地址發(fā)起遠(yuǎn)程調(diào)用

問題3:order-service如何得知某個user-service實例是否依然健康,是不是已經(jīng)宕機(jī)?

  • user-service會每隔一段時間(默認(rèn)30秒)向eureka-server發(fā)起請求,報告自己狀態(tài),稱為心跳
  • 當(dāng)超過一定時間沒有發(fā)送心跳時,eureka-server會認(rèn)為微服務(wù)實例故障,將該實例從服務(wù)列表中剔除
  • order-service拉取服務(wù)時,就能將故障實例排除了

注意:一個微服務(wù),既可以是服務(wù)提供者,又可以是服務(wù)消費(fèi)者,因此eureka將服務(wù)注冊、服務(wù)發(fā)現(xiàn)等功能統(tǒng)一封裝到了eureka-client端

因此,接下來我們動手實踐的步驟包括:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

3.2.搭建eureka-server

首先大家注冊中心服務(wù)端:eureka-server,這必須是一個獨(dú)立的微服務(wù)

3.2.1.創(chuàng)建eureka-server服務(wù)

在cloud-demo父工程下,創(chuàng)建一個子模塊:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

填寫模塊信息:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

然后填寫服務(wù)信息:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

3.2.2.引入eureka依賴

引入SpringCloud為eureka提供的starter依賴:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

3.2.3.編寫啟動類

給eureka-server服務(wù)編寫一個啟動類,一定要添加一個@EnableEurekaServer注解,開啟eureka的注冊中心功能:

package cn.itcast.eureka;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
    }
}

3.2.4.編寫配置文件

編寫一個application.yml文件,內(nèi)容如下:

server:
  port: 10086
spring:
  application:
    name: eureka-server
eureka:
  client:
    service-url: 
      defaultZone: http://127.0.0.1:10086/eureka

3.2.5.啟動服務(wù)

啟動微服務(wù),然后在瀏覽器訪問:http://127.0.0.1:10086

看到下面結(jié)果應(yīng)該是成功了:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

3.3.服務(wù)注冊

下面,我們將user-service注冊到eureka-server中去。

1)引入依賴

在user-service的pom文件中,引入下面的eureka-client依賴:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

2)配置文件

在user-service中,修改application.yml文件,添加服務(wù)名稱、eureka地址:

spring:
  application:
    name: userservice
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka

3)啟動多個user-service實例

為了演示一個服務(wù)有多個實例的場景,我們添加一個SpringBoot的啟動配置,再啟動一個user-service。

首先,復(fù)制原來的user-service啟動配置:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

然后,在彈出的窗口中,填寫信息:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

現(xiàn)在,SpringBoot窗口會出現(xiàn)兩個user-service啟動配置:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

不過,第一個是8081端口,第二個是8082端口。

啟動兩個user-service實例:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

查看eureka-server管理頁面:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

3.4.服務(wù)發(fā)現(xiàn)

下面,我們將order-service的邏輯修改:向eureka-server拉取user-service的信息,實現(xiàn)服務(wù)發(fā)現(xiàn)。

1)引入依賴

之前說過,服務(wù)發(fā)現(xiàn)、服務(wù)注冊統(tǒng)一都封裝在eureka-client依賴,因此這一步與服務(wù)注冊時一致。

在order-service的pom文件中,引入下面的eureka-client依賴:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

2)配置文件

服務(wù)發(fā)現(xiàn)也需要知道eureka地址,因此第二步與服務(wù)注冊一致,都是配置eureka信息:

在order-service中,修改application.yml文件,添加服務(wù)名稱、eureka地址:

spring:
  application:
    name: orderservice
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka

3)服務(wù)拉取和負(fù)載均衡

最后,我們要去eureka-server中拉取user-service服務(wù)的實例列表,并且實現(xiàn)負(fù)載均衡。

不過這些動作不用我們?nèi)プ?,只需要添加一些注解即可?/p>

在order-service的OrderApplication中,給RestTemplate這個Bean添加一個@LoadBalanced注解:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

修改order-service服務(wù)中的cn.itcast.order.service包下的OrderService類中的queryOrderById方法。修改訪問的url路徑,用服務(wù)名代替ip、端口:

3.Eureka注冊中心,黑馬微服務(wù)筆記,eureka,云原生

spring會自動幫助我們從eureka-server端,根據(jù)userservice這個服務(wù)名稱,獲取實例列表,而后完成負(fù)載均衡。文章來源地址http://www.zghlxwxcb.cn/news/detail-823369.html

到了這里,關(guān)于3.Eureka注冊中心的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微服務(wù)Eureka注冊中心

    微服務(wù)Eureka注冊中心

    目錄 一、Eureka的結(jié)構(gòu)和作用 二、搭建eureka-server 三、服務(wù)注冊 四、服務(wù)發(fā)現(xiàn) 假如我們的服務(wù)提供者user-service部署了多個實例,如圖: 存在的問題: order-service在發(fā)起遠(yuǎn)程調(diào)用的時候,該如何得知user-service實例的ip地址和端口? 有多個user-service實例地址,order-service調(diào)用時該如

    2024年02月13日
    瀏覽(25)
  • 1.2 eureka注冊中心,完成服務(wù)注冊

    1.2 eureka注冊中心,完成服務(wù)注冊

    目錄 環(huán)境搭建 搭建eureka服務(wù) 導(dǎo)入eureka服務(wù)端依賴 編寫啟動類,添加@EnableEurekaServer注解 編寫eureka配置文件 啟動服務(wù),訪問eureka Euraka服務(wù)注冊 創(chuàng)建了兩個子模塊 在模塊里導(dǎo)入rureka客戶端依賴 ?編寫eureka配置文件 添加Services 創(chuàng)建父工程,父工程中導(dǎo)入spring cloud的依賴,用來統(tǒng)

    2024年02月14日
    瀏覽(23)
  • 微服務(wù)學(xué)習(xí) Eureka注冊中心

    微服務(wù)學(xué)習(xí) Eureka注冊中心

    服務(wù)調(diào)用時候出現(xiàn)問題,當(dāng)服務(wù)者很多時候,比如不同的端口。消費(fèi)者如何找到服務(wù)者的地址?又如何判斷服務(wù)者是否健康。 Eureka基本原理: 總結(jié):如果有多個服務(wù)提供者,消費(fèi)者該如何選擇? 搭建Eureka注冊中心: 1.引入依賴 2.編寫啟動類,添加@EnableEurekaServer注解 這里在啟動

    2024年04月16日
    瀏覽(20)
  • 微服務(wù)注冊中心之Eureka

    微服務(wù)注冊中心之Eureka

    微服務(wù)注冊中心之Eureka Spring Boot 2.1.7.RELEASE spring-cloud-starter-netflix-eureka-server Finchley.SR2 spring-boot-starter-security 2.1.7.RELEASE pom.xml 文件 單節(jié)點(diǎn)搭建非常簡單,引入上面的依賴,然后編寫配置文件 application.yml 啟動類添加注解 這樣單節(jié)點(diǎn)就構(gòu)建完成了。 但是單節(jié)點(diǎn)一般來說僅僅是個

    2024年02月02日
    瀏覽(18)
  • SpringCloud:Eureka服務(wù)注冊中心

    SpringCloud:Eureka服務(wù)注冊中心

    Eureka是一個服務(wù)治理組件,它主要包括服務(wù)注冊和服務(wù)發(fā)現(xiàn),主要用來搭建服務(wù)注冊中心。 在搭建微服務(wù)項目時遇到的三個問題: 服務(wù)消費(fèi)者該如何獲取服務(wù)提供者的地址信息? 如果有多個服務(wù)提供者,消費(fèi)者該如何選擇? 消費(fèi)者如何得知服務(wù)提供者的健康狀態(tài)? Eureka的作

    2024年01月20日
    瀏覽(31)
  • 【微服務(wù)開篇-RestTemplate服務(wù)調(diào)用、Eureka注冊中心、Nacos注冊中心】

    【微服務(wù)開篇-RestTemplate服務(wù)調(diào)用、Eureka注冊中心、Nacos注冊中心】

    ?本篇用到的資料: https://gitee.com/Allengan/cloud-demo.git https://gitee.com/Allengan/cloud-demo.git 目錄 1.認(rèn)識微服務(wù) 1.1.單體架構(gòu) 1.2.分布式架構(gòu) 1.3.微服務(wù) 1.4.SpringCloud 1.5.總結(jié) 2.服務(wù)拆分和遠(yuǎn)程調(diào)用 2.1.服務(wù)拆分原則 2.2.服務(wù)拆分示例 2.2.1.導(dǎo)入Sql語句 2.2.2.導(dǎo)入demo工程 2.3.實現(xiàn)遠(yuǎn)程調(diào)用案例

    2024年02月08日
    瀏覽(27)
  • 服務(wù)注冊發(fā)現(xiàn)_搭建單機(jī)Eureka注冊中心

    服務(wù)注冊發(fā)現(xiàn)_搭建單機(jī)Eureka注冊中心

    創(chuàng)建cloud-eureka-server7001模塊 pom添加依賴 寫yml文件 主啟動類 測試 訪問瀏覽器localhostL:7001 參數(shù): Environment: 環(huán)境,默認(rèn)為test,該參數(shù)在實際使用過程中,可以不用更改 Data center: 數(shù)據(jù)中心,使用的是默認(rèn)的是 “MyOwn” Current time:當(dāng)前的系統(tǒng)時間 Uptime:已經(jīng)運(yùn)行了多少時間

    2024年02月07日
    瀏覽(20)
  • 【SpringCloud微服務(wù)--Eureka服務(wù)注冊中心】

    【SpringCloud微服務(wù)--Eureka服務(wù)注冊中心】

    gitee倉庫 內(nèi)容:SpringCloud + SpringCloud alibaba 技術(shù)棧:Java8+maven+git,github+Nginx+RabbitMQ+SpringBoot2.0 微服務(wù)架構(gòu)是一種架構(gòu)模式,它提倡將單一應(yīng)用程序劃分成一組小的服務(wù),服務(wù)之間互相協(xié)調(diào)、互相配合,為用戶提供最終價值。每個服務(wù)運(yùn)行在其獨(dú)立的 進(jìn)程 中,服務(wù)與服務(wù)間采用

    2024年02月09日
    瀏覽(51)
  • SpringCloud之Eureka 服務(wù)注冊中心

    SpringCloud之Eureka 服務(wù)注冊中心

    5 Eureka 服務(wù)注冊中心 5.1什么是 Eureka Netflix在涉及Eureka時,遵循的就是API原則. Eureka是Netflix的有個子模塊,也是核心模塊之一。Eureka是基于REST的服務(wù),用于定位服務(wù),以實現(xiàn)云端中間件層服務(wù)發(fā)現(xiàn)和故障轉(zhuǎn)移,服務(wù)注冊與發(fā)現(xiàn)對于微服務(wù)來說是非常重要的,有了服務(wù)注冊與發(fā)

    2024年02月04日
    瀏覽(23)
  • 【微服務(wù)學(xué)習(xí)1--組件】服務(wù)注冊中心--Eureka

    【微服務(wù)學(xué)習(xí)1--組件】服務(wù)注冊中心--Eureka

    一、簡介: ? ? ? Eureka是由Netflix公司開源的一款提供服務(wù)注冊和發(fā)現(xiàn)的產(chǎn)品。因此,在添加依賴時,會有NetFlix。 ? ? ?該組件管理各種的服務(wù)功能:注冊、 發(fā)現(xiàn)、熔斷、負(fù)載、降級等。 ? ? ? ? ? ? ?Eureka采用的是基于C/S的設(shè)計架構(gòu)。 ? ? Eureka由兩部分組成(Server/Client)

    2024年02月15日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包