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

【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)

這篇具有很好參考價(jià)值的文章主要介紹了【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)

??個(gè)人主頁(yè): ?? 葉落閑庭
??我的專(zhuān)欄:??
c語(yǔ)言
數(shù)據(jù)結(jié)構(gòu)
javaEE
操作系統(tǒng)
Redis

石可破也,而不可奪堅(jiān);丹可磨也,而不可奪赤。

一、Eureka原理分析

1.1 服務(wù)調(diào)用出現(xiàn)的問(wèn)題

當(dāng)有兩個(gè)服務(wù),第一個(gè)服務(wù)需要遠(yuǎn)程調(diào)用第二個(gè)服務(wù),采用的方式是發(fā)起一次HTTP請(qǐng)求,在之前的代碼中是將服務(wù)提供者的ip和端口號(hào)硬編碼到服務(wù)發(fā)起者中,采用這種方式會(huì)出現(xiàn)一些問(wèn)題,在開(kāi)發(fā)時(shí),會(huì)有開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、生產(chǎn)環(huán)境等,每次環(huán)境的變更可能會(huì)使服務(wù)的地址發(fā)生改變,采用硬編碼就需要在環(huán)境發(fā)生變化時(shí)修改硬編碼,然后重新編譯打包,這樣會(huì)很麻煩,同時(shí),為了處理并發(fā)等問(wèn)題,服務(wù)提供者可能會(huì)是一個(gè)集群,集群中每個(gè)服務(wù)提供者都有自己的地址,這樣由于服務(wù)消費(fèi)者的硬編碼,將無(wú)法準(zhǔn)確的得到想要的服務(wù)。

1.2 Eureka的作用

  • 服務(wù)消費(fèi)者該如何獲取服務(wù)提供者的地址信息?
  • 如果有多個(gè)服務(wù)提供者,消費(fèi)者該如何選擇?
  • 消費(fèi)者如何得知服務(wù)提供者的健康狀態(tài)?

eureka中有一個(gè)eureka-server(注冊(cè)中心)和作為eureka-client(eureka客戶(hù)端)的服務(wù)消費(fèi)者和服務(wù)提供者,其中服務(wù)提供者在啟動(dòng)時(shí)會(huì)把自己的信息注冊(cè)給eureka-server,每一個(gè)服務(wù)啟動(dòng)時(shí)都會(huì)進(jìn)行注冊(cè)操作,此時(shí),若有服務(wù)消費(fèi)者想要獲取一個(gè)服務(wù),就可以從eureka注冊(cè)中心中找,服務(wù)消費(fèi)者將自己需要的服務(wù)發(fā)給注冊(cè)中心,注冊(cè)中心就會(huì)返回對(duì)應(yīng)的服務(wù)信息,但服務(wù)提供者可能是一個(gè)集群,那么注冊(cè)中心返回的結(jié)果可能是多個(gè),這時(shí)可以采用負(fù)載均衡的算法挑出一個(gè),然后發(fā)起遠(yuǎn)程調(diào)用的請(qǐng)求。
每個(gè)服務(wù)每隔30s都會(huì)向eureka-server(注冊(cè)中心)發(fā)送一次心跳,表示當(dāng)前服務(wù)正常運(yùn)行,當(dāng)eureka-server(注冊(cè)中心)超過(guò)規(guī)定時(shí)間沒(méi)有收到一個(gè)服務(wù)的心跳,會(huì)自動(dòng)將這個(gè)服務(wù)移除,說(shuō)明這個(gè)服務(wù)運(yùn)行出現(xiàn)了問(wèn)題。

二、 搭建Eureka

2.1 創(chuàng)建項(xiàng)目

在現(xiàn)有項(xiàng)目中創(chuàng)建名為eureka-server(可以自定義名稱(chēng))的子模塊


【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)


  • 選擇Maven:

【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)


  • 在pom.xml中添加Eureka的依賴(lài),添加SpringBoot的啟動(dòng)依賴(lài)
<dependencies>
        <!--eureka服務(wù)端-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

2.2 編寫(xiě)啟動(dòng)類(lèi),添加@EnableEurekaServer注解

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

2.3 添加application.yml的配置文件

server:
  port: 10086
spring:
  application:
    name: eurekaserver  # eureka服務(wù)名稱(chēng)
eureka:
  client:
    service-url:  # eureka地址信息
      defaultZone: http://localhost:10086/eureka

2.4 注冊(cè)服務(wù)到Eureka

  • 將一個(gè)服務(wù)注冊(cè)到EurekaServer步驟如下:

2.4.1 在服務(wù)項(xiàng)目中引入eureka客戶(hù)端依賴(lài)

<!--eureka客戶(hù)端依賴(lài)-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

2.4.2 配置application.yml文件的信息

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/cloud_user?useSSL=false
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver
  application:
    name: userservice # user服務(wù)的服務(wù)名稱(chēng)
eureka:
  client:
    service-url: #eureka地址信息
    	defaultZone: http://localhost:10086/eureka

2.4.3 模擬多實(shí)例部署

  • 在idea中選擇一個(gè)部署好Eureka的模塊,右鍵選擇Copy Configuration

【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)

  • 自定義一個(gè)名字:
    【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)

  • 配置與原模塊不同的端口號(hào),點(diǎn)擊Environment,在VM options中修改端口-Dserver.port=新端口號(hào)

【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn),# SpringCloud,spring cloud,eureka,服務(wù)發(fā)現(xiàn)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-726709.html


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

2.5.1 在order-service完成服務(wù)拉取

  • 服務(wù)拉取是基于服務(wù)名稱(chēng)獲取服務(wù)列表,然后在對(duì)服務(wù)列表做負(fù)載均衡
  • 修改OrderService的代碼,修改訪問(wèn)的url路徑,用服務(wù)名代替ip、端口:
        //2.利用RestTemplate發(fā)起http請(qǐng)求,查詢(xún)用戶(hù)
        String url = "http://userservice/user/" + order.getUserId();

2.5.2 在order-service頂目的啟動(dòng)類(lèi)Orderapplication中的RestTemplate添加負(fù)載均衡注解

    @Bean
    @LoadBalanced
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

到了這里,關(guān)于【SpringCloud】Eureka原理分析、搭建Eureka服務(wù)、服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 什么是SpringCloud Eureka服務(wù)注冊(cè)與發(fā)現(xiàn)

    什么是SpringCloud Eureka服務(wù)注冊(cè)與發(fā)現(xiàn)

    ??前言 本篇博文是關(guān)于SpringCloud Eureka 介紹,希望你能夠喜歡 ??個(gè)人主頁(yè):晨犀主頁(yè) ??個(gè)人簡(jiǎn)介:大家好,我是晨犀,希望我的文章可以幫助到大家,您的滿(mǎn)意是我的動(dòng)力???? ??歡迎大家:這里是CSDN,我總結(jié)知識(shí)的地方,歡迎來(lái)到我的博客,感謝大家的觀看?? 如果文

    2024年02月09日
    瀏覽(34)
  • 【SpringCloud微服務(wù)】- Eureka服務(wù)注冊(cè)與服務(wù)發(fā)現(xiàn)Discovery

    【SpringCloud微服務(wù)】- Eureka服務(wù)注冊(cè)與服務(wù)發(fā)現(xiàn)Discovery

    Eureka是Netflix開(kāi)發(fā)的服務(wù)發(fā)現(xiàn)框架,本身是一個(gè)基于REST的服務(wù),主要用于定位運(yùn)行在AWS域中的中間層服務(wù),以達(dá)到負(fù)載均衡和中間層服務(wù)故障轉(zhuǎn)移的目的。 SpringCloud將它集成在其子項(xiàng)目spring-cloud-netflix中,以實(shí)現(xiàn)SpringCloud的服務(wù)發(fā)現(xiàn)功能。 Eureka包含兩個(gè)組件: Eureka Server 和 E

    2024年02月03日
    瀏覽(25)
  • SpringCloud_Eureka服務(wù)的注冊(cè)與發(fā)現(xiàn)

    SpringCloud_Eureka服務(wù)的注冊(cè)與發(fā)現(xiàn)

    分布式:分布式解決的是系統(tǒng)性能問(wèn)題: 即 解決系統(tǒng)部署上單點(diǎn)的問(wèn)題 ,盡量讓組成系統(tǒng)的子系統(tǒng)分散在不同的機(jī)器上進(jìn)而提高系統(tǒng)的吞吐能力。 即多個(gè)相同的子系統(tǒng)在不同的服務(wù)器上。 分布式系統(tǒng)架構(gòu)存在問(wèn)題通過(guò)服務(wù)治理解決。 微服務(wù):將系統(tǒng)的業(yè)務(wù)功能劃分為極小

    2023年04月22日
    瀏覽(15)
  • SpringCloud 教程 | 第一篇: 服務(wù)的注冊(cè)與發(fā)現(xiàn)(Eureka)

    SpringCloud 教程 | 第一篇: 服務(wù)的注冊(cè)與發(fā)現(xiàn)(Eureka)

    一、spring cloud簡(jiǎn)介 spring cloud 為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)的一些工具,包括配置管理、服務(wù)發(fā)現(xiàn)、斷路器、路由、微代理、事件總線、全局鎖、決策競(jìng)選、分布式會(huì)話等等。它運(yùn)行環(huán)境簡(jiǎn)單,可以在開(kāi)發(fā)人員的電腦上跑。另外說(shuō)明spring cloud是基于springboot的,所以需

    2024年02月11日
    瀏覽(20)
  • 【SpringCloud】二、服務(wù)注冊(cè)發(fā)現(xiàn)Eureka與負(fù)載均衡Ribbon

    【SpringCloud】二、服務(wù)注冊(cè)發(fā)現(xiàn)Eureka與負(fù)載均衡Ribbon

    服務(wù)提供者:一次業(yè)務(wù)中,被其它微服務(wù)調(diào)用的服務(wù)。(提供接口給其它微服務(wù)) 服務(wù)消費(fèi)者:一次業(yè)務(wù)中,調(diào)用其它微服務(wù)的服務(wù)。(調(diào)用其它微服務(wù)提供的接口) 很明顯,這是一個(gè)相對(duì)的概念。 上一篇中,遠(yuǎn)程調(diào)用時(shí),url參數(shù)是寫(xiě)死在代碼中的,而不同的測(cè)試、生產(chǎn)、

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

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

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

    2024年02月07日
    瀏覽(20)
  • SpringCloud學(xué)習(xí)筆記(上):服務(wù)注冊(cè)與發(fā)現(xiàn):Eureka、Zookeeper、Consul+負(fù)載均衡服務(wù)調(diào)用:Ribbon

    SpringCloud學(xué)習(xí)筆記(上):服務(wù)注冊(cè)與發(fā)現(xiàn):Eureka、Zookeeper、Consul+負(fù)載均衡服務(wù)調(diào)用:Ribbon

    SpringCloud=分布式微服務(wù)架構(gòu)的一站式解決方案,是多種微服務(wù)架構(gòu)落地技術(shù)的集合體,俗稱(chēng)微服務(wù)全家桶。 springboot版本選擇: git源碼地址:https://github.com/spring-projects/spring-boot/releases/ SpringBoot2.0新特性:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release springcloud版本選

    2024年02月08日
    瀏覽(23)
  • SpringCloud之Eureka注冊(cè)中心原理及其搭建

    SpringCloud之Eureka注冊(cè)中心原理及其搭建

    Eureka是Netflix開(kāi)發(fā)的服務(wù)發(fā)現(xiàn)框架,本身是一個(gè)基于REST的服務(wù),主要用于定位運(yùn)行在AWS域中的中間層服務(wù),以達(dá)到負(fù)載均衡和中間層服務(wù)故障轉(zhuǎn)移的目的。SpringCloud將它集成在其子項(xiàng)目spring-cloud-netflix中,以實(shí)現(xiàn)SpringCloud的服務(wù)發(fā)現(xiàn)功能。 1、Eureka組件 Eureka包含兩個(gè)組件:Eure

    2024年02月03日
    瀏覽(23)
  • 1-Eureka服務(wù)注冊(cè)與發(fā)現(xiàn)以及Eureka集群搭建(實(shí)操型)

    1-Eureka服務(wù)注冊(cè)與發(fā)現(xiàn)以及Eureka集群搭建(實(shí)操型)

    直接看下面的文章 idea創(chuàng)建maven多模塊項(xiàng)目. 簡(jiǎn)單介紹一下: 父工程: dog-cloud-parent 管理實(shí)體項(xiàng)目: dog-po 微服務(wù)-服務(wù)提供者: dog-provider-8001 微服務(wù)-服務(wù)消費(fèi)者: dog-consumer-80 如下: 1.3.1 父工程:dog-cloud-parent pom如下: 1.3.2 管理實(shí)體項(xiàng)目:dog-po 如下: 1.3.3 服務(wù)提供者:dog-

    2024年02月16日
    瀏覽(23)
  • SpringCloud搭建Eureka服務(wù)注冊(cè)中心(六)

    SpringCloud搭建Eureka服務(wù)注冊(cè)中心(六)

    前面說(shuō)過(guò)eureka是c/s模式的 ?server服務(wù)端就是服務(wù)注冊(cè)中心,其他的都是client客戶(hù)端,服務(wù)端用來(lái)管理所有服務(wù),客戶(hù)端通過(guò)注冊(cè)中心,來(lái)調(diào)用具體的服務(wù); 我們先來(lái)搭建下服務(wù)端,也就是服務(wù)注冊(cè)中心; project xmlns=\\\"http://maven.apache.org/POM/4.0.0\\\" xmlns:xsi=\\\"http://www.w3.org/2001/XMLSche

    2024年02月10日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包