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

一、開發(fā)環(huán)境window10微服務(wù)注冊中心搭建—Eureka

這篇具有很好參考價值的文章主要介紹了一、開發(fā)環(huán)境window10微服務(wù)注冊中心搭建—Eureka。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

簡述:Eureka 是天生集群的,搭建配置相當(dāng)簡單:不論你有多少的機(jī)器部署,只要相互之間指定對方的注冊中心地址就可以了,而多個 Eureka Server 之間是通過復(fù)制的方式完成注冊服務(wù)的同步,遵循AP原則。

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

優(yōu)點:

  1. 從設(shè)計角度來看,Eureka可以說是無懈可擊,注冊中心、提供者、調(diào)用者邊界清晰通過去中心化的集群支持保證了注冊中心的整體可用性。
  2. 可以運行多個實例來構(gòu)建集群,解決單點問題。但不同于 ZooKeeper 的選舉 leader 的過程,Eureka Server 采用的是Peer to Peer 對等通信。這是一種去中心化的架構(gòu),無 master/slave 之分,每一個 Peer 都是對等的。在這種架構(gòu)風(fēng)格中,節(jié)點通過彼此互相注冊來提高可用性,每個節(jié)點需要添加一個或多個有效的 serviceUrl 指向其他節(jié)點。每個節(jié)點都可被視為其他節(jié)點的副本。因此,Eureka可以很好的應(yīng)對因網(wǎng)絡(luò)故障導(dǎo)致部分節(jié)點失去聯(lián)系的情況。

缺點:

1.Eureka屬于應(yīng)用內(nèi)的注冊方式,對應(yīng)用的侵入性太強(qiáng),且只支持Java應(yīng)用。

eureka集群注冊中心的搭建以及測試:

搭建三個注冊中心(也可以多個或者兩個,因為eureka集群是p2p的,并不是選舉模式,故可隨意增加數(shù)量且搭建簡單)

簡而言之,首先搭建父項目springcloud用于統(tǒng)一管理包,然后創(chuàng)建springcloud_eureka的頂級項目,在該項目下創(chuàng)建三個注冊中心eureka1、eureka2、eureka3以及測試用的生產(chǎn)者項目provider以及消費者項目consumer,測試注冊中心是否正常。

整體目錄結(jié)構(gòu)如下:

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

  1. 首先創(chuàng)建springcloud項目并在其創(chuàng)建子項目springcloud-eureka項目(該項目下pom文件保持創(chuàng)建時默認(rèn)配置即可),并在springcloud項目的pom文件中添加以下配置:

<!--spring boot-->
<parent>
????<groupId>org.springframework.boot</groupId>
????<artifactId>spring-boot-starter-parent</artifactId>
????<version>2.6.11</version>
????<relativePath/>
</parent>
<!--Spring Cloud-->
<dependencyManagement>
????<dependencies>
????????<dependency>
????????????<groupId>org.springframework.cloud</groupId>
????????????<artifactId>spring-cloud-dependencies</artifactId>
????????????<version>2021.0.2</version>
????????????<type>pom</type>
????????????<scope>import</scope>
????????</dependency>
????</dependencies>
</dependencyManagement>

2.然后在springcloud-eureka項目下創(chuàng)建三個注冊中心項目,并在pom文件中添加以下配置,同時對于三個注冊中心的application配置需要稍微修改其中幾個配置項:

Pom文件添加以下依賴:

<dependencies>
????<dependency>
????????<groupId>org.springframework.boot</groupId>
????????<artifactId>spring-boot-starter-web</artifactId>
????</dependency>


????<!--eureka-server-->
????<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-actuator</artifactId>
????</dependency>


</dependencies>

Application.yml配置文件添加以下:

server:
??port: 8761

eureka:
??instance:
????# 配置主機(jī)名,請在【Host】文件中進(jìn)行主機(jī)名與本機(jī)ip的映射配置
????hostname: eureka-server1
????# 顯示 ip 地址,代替顯示主機(jī)名
????prefer-ip-address: true
????# 所注冊服務(wù)實例名稱的顯示形式
????instance-id: ${eureka.instance.hostname}:${server.port}
????# 每隔 3 秒發(fā)一次心跳包
????lease-renewal-interval-in-seconds: 3
????# 如果 15 秒沒有發(fā)送心跳包,就讓 eureka 把自己從服務(wù)列表中移除
????lease-expiration-duration-in-seconds: 15
??client:
????service-url:
??????# 想要搭建 eureka 集群,需要將自己注冊到其它的 eureka 中
??????# 因此這里需要配置其它 eureka 地址,多個地址以英文逗號分隔
??????defaultZone: http://eureka-server2:8762/eureka,http://eureka-server3:8763/eureka
????# 是否將自己的路徑注冊到 eureka 上
????register-with-eureka: true
????# 是否需要從 eureka 中抓取路徑
????fetch-registry: true
??server:
????# 關(guān)閉 eureka 自我保護(hù),當(dāng)注冊的服務(wù)未及時發(fā)送心跳時,自動移除服務(wù)
????enable-self-preservation: false
????# eureka 檢查服務(wù)是否存在的時間間隔(毫秒)
????eviction-interval-timer-in-ms: 5000
??dashboard:
????enabled: true
????# eureka 監(jiān)控頁面路徑 默認(rèn)訪問: http://地址:端口
????path: "/"

# 集群需要使用相同的 application 名稱
spring:
??application:
????name: eureka-server-cluster

#actuator——springboot四大核心程序監(jiān)控器配置
# actuator 監(jiān)控配置
management:
??#actuator端口 如果不配置做默認(rèn)使用上面8080端口
??server:
????port: 7761
??info:
????env:
??????enabled: true
??endpoints:
????web:
??????exposure:
????????#默認(rèn)值訪問health,info端點 ?用*可以包含全部端點
????????include: "*"
??????#修改訪問路徑 2.0之前默認(rèn)是/; 2.0默認(rèn)是/actuator可以通過這個屬性值修改
??????base-path: /actuator
??endpoint:
????shutdown:
??????enabled: true #打開shutdown端點
????health:
??????show-details: always #獲得健康檢查中所有指標(biāo)的詳細(xì)信息

info:
??app.name: eureka注冊中心1機(jī)
??app.model: eureka
??app.desc: eureka集群中的第一臺機(jī)
??company.name: dogquan
??build.version: eureka 3.1.2

啟動類記得添加;@EnableEurekaServer

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

關(guān)于eureka-server1 需要在host文件中進(jìn)行映射,同理其它兩個中心。類比eureka1中心的創(chuàng)建,相繼可創(chuàng)建集群中其它兩個中心,創(chuàng)建完后先后啟動三個注冊中心,訪問地址http://eureka-server1:8761即可訪問到eureka監(jiān)控中心的相關(guān)信息。包括注冊的消費者,提供者以及集群的其它兩個注冊中心。

3.最后在springcloud-eureka項目下相繼又創(chuàng)建生產(chǎn)者provider以及consumer消費者項目進(jìn)行測試注冊中心的可用性(消費者又可以是生產(chǎn)者,兩者基于服務(wù)的供給相互切換身份):

生產(chǎn)者:

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

Pom文件中添加以下依賴:

<dependencies>
????<!--spring boot web-->
????<dependency>
????????<groupId>org.springframework.boot</groupId>
????????<artifactId>spring-boot-starter-web</artifactId>
????</dependency>

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

Application.yml配置文件添加以下配置:

server:
??port: 8200

eureka:
??instance:
????# 配置主機(jī)名,請在【Host】文件中進(jìn)行主機(jī)名與本機(jī)ip的映射配置
????hostname: provider_service
????# 顯示 ip 地址,代替顯示主機(jī)名
????prefer-ip-address: true
????# 所注冊服務(wù)實例名稱的顯示形式
????instance-id: ${eureka.instance.hostname}:${server.port}
????# 每隔 3 秒發(fā)一次心跳包
????lease-renewal-interval-in-seconds: 3
????# 如果 15 秒沒有發(fā)送心跳包,就讓 eureka 把自己從服務(wù)列表中移除
????lease-expiration-duration-in-seconds: 15
??client:
????service-url:
??????# 將當(dāng)前 springboot 服務(wù)注冊到所有的 eureka 中,多個地址以英文逗號分隔
??????defaultZone: http://eureka-server1:8761/eureka,http://eureka-server2:8762/eureka,http://eureka-server3:8763/eureka
????# 是否將自己的路徑注冊到 eureka 上
????register-with-eureka: true
????# 是否需要從 eureka 中抓取路徑
????fetch-registry: true

# 集群需要使用相同的 application 名稱
spring:
??application:
????name: provider-App

創(chuàng)建controller層并添加以下代碼:

@RequestMapping("/provider")
@RestController
public class ProviderController {

????@RequestMapping("/getdata/{id}")
????public Map GetData(@PathVariable("id") int id) {

????????Map result = new HashMap();
????????result.put("status",0);
????????result.put("msg","success");
????????result.put("get_id_value",id);
????????result.put("version", UUID.randomUUID().toString());

????????return result;
????}
}

在啟動類Provider上記得添加:@EnableEurekaClient

@EnableEurekaClient

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

消費者:

windows安裝eureka,微服務(wù),eureka,微服務(wù),java

Pom文件添加以下依賴:

<dependencies>
????<!--spring boot web-->
????<dependency>
????????<groupId>org.springframework.boot</groupId>
????????<artifactId>spring-boot-starter-web</artifactId>
????</dependency>

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

Application.yml配置中添加以下:

server:
??port: 8100

eureka:
??instance:
????# 配置主機(jī)名,請在【Host】文件中進(jìn)行主機(jī)名與本機(jī)ip的映射配置
????hostname: consumer_service
????# 顯示 ip 地址,代替顯示主機(jī)名
????prefer-ip-address: true
????# 所注冊服務(wù)實例名稱的顯示形式
????instance-id: ${eureka.instance.hostname}:${server.port}
????# 每隔 3 秒發(fā)一次心跳包
????lease-renewal-interval-in-seconds: 3
????# 如果 15 秒沒有發(fā)送心跳包,就讓 eureka 把自己從服務(wù)列表中移除
????lease-expiration-duration-in-seconds: 15
??client:
????service-url:
??????# 將當(dāng)前 springboot 服務(wù)注冊到所有的 eureka 中,多個地址以英文逗號分隔
??????defaultZone: http://eureka-server1:8761/eureka,http://eureka-server2:8762/eureka,http://eureka-server3:8763/eureka
????# 是否將自己的路徑注冊到 eureka 上
????register-with-eureka: true
????# 是否需要從 eureka 中抓取路徑
????fetch-registry: true

# 集群需要使用相同的 application 名稱
spring:
??application:
????name: consumer-App

增加restTemplateConfig用于簡化調(diào)用rest接口方式(主要方便測試):

@Configuration
public class RestTemplateConfig {

????@LoadBalanced
????@Bean
????public RestTemplate restTemplate(){
????????// RestTemplate 簡化了調(diào)用 Restful 接口的開發(fā)方式
????????return new RestTemplate();
????}
}

增加controller層:

@RequestMapping("/consumer")
@RestController
public class ConsumerController {

????@Autowired
????private RestTemplate restTemplate;

????@RequestMapping("/getdata/{id}")
????public Map GetData(@PathVariable("id") int id) {

????????//使用服務(wù)在 eureka 上注冊的 application 名稱代替 ip 和端口號
????????String url = "http://PROVIDER-APP/provider/getdata/" + id;
????????Map result = restTemplate.getForObject(url, Map.class);
????????return result;
????}
}

同理生產(chǎn)者,在啟動類中亦需要記得:@EnableEurekaClient

最后訪問瀏覽器中訪問生產(chǎn)者請求地址或者消費者請求地址,成功訪問即可。

備注:actuator組件為程序監(jiān)控,相關(guān)配置見于eureka注冊服務(wù)的配置文件application,同時需要在pom文件中添加以下依賴:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

每一個服務(wù)都可添加該組件,主要用于監(jiān)控程序的相關(guān)信息,可以在eureka的監(jiān)控頁面對應(yīng)的info看到自定義的info信息(配置在application配置文件,詳情請自行;同時,注意生產(chǎn)環(huán)境中如果有使用該組件一定要做相關(guān)的權(quán)限訪問控制,不然會暴露系統(tǒng)內(nèi)部各種信息,信息泄漏的風(fēng)險極大。相關(guān)學(xué)習(xí)地址:Spring boot——Actuator 詳解_actuator springboot_奮斗喝咖啡的博客-CSDN博客)文章來源地址http://www.zghlxwxcb.cn/news/detail-755400.html

到了這里,關(guān)于一、開發(fā)環(huán)境window10微服務(wù)注冊中心搭建—Eureka的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 基于Dubbo和Nacos搭建微服務(wù)的配置中心和服務(wù)注冊中心

    基于Dubbo和Nacos搭建微服務(wù)的配置中心和服務(wù)注冊中心

    1.添加nacos依賴 2.配置application.properties PS:nacos2.0除了需要8848的端口之外,還新增了端口+1000的新端口用于客戶端和服務(wù)端GRPC通信的端口,所以如果是自己部署的nacos需要放開這倆個端口,服務(wù)才可以啟動成功。 3.配置類 3.1 添加Spring Cloud原生注解 @EnableDiscoveryClient 3.2 客戶端服

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

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

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

    2024年02月10日
    瀏覽(23)
  • Springboot搭建微服務(wù)案例之Eureka注冊中心

    Springboot搭建微服務(wù)案例之Eureka注冊中心

    放一些pojo類 (1)整合mybatis dao層 創(chuàng)建 dao 接口的映射文件還有 mybatis 的核心配置文件 配置 MyBatis 的類型別名,簡化 MyBatis 映射文件中的配置? (2)Service 使用 RestTemplate 這個 Java 客戶端組件來實現(xiàn)服務(wù)的遠(yuǎn)程調(diào)用。所以我們需要將 RestTemplate 使用 Java 配置類進(jìn)行注入: 這里

    2024年02月05日
    瀏覽(20)
  • Nacos 注冊中心下載到搭建詳細(xì)步驟【微服務(wù)】

    Nacos 注冊中心下載到搭建詳細(xì)步驟【微服務(wù)】

    Nacos 是阿里的產(chǎn)品,現(xiàn)在是 SpringCloud 中的一個組件。它的功能要比 Eureka 更加豐富,在國內(nèi)比較受歡迎。 百度網(wǎng)盤下載鏈接: https://pan.baidu.com/s/1XLn7hGp2bHBx7ICvKELtzQ?pwd=dju6 Nacos 官網(wǎng)下載: https://nacos.io/ ① 點擊前往 Github Github 頁面打不開的可以下一個加速器,我用的 Watt Toolk

    2024年02月03日
    瀏覽(35)
  • day10-Spring Cloud Alibaba Nacos-服務(wù)注冊與配置中心

    官網(wǎng):https://github.com/alibaba/nacos,Nacos官方中文手冊 Nacos:Spring Cloud Alibaba服務(wù)注冊與配置中心(非常詳細(xì)) (biancheng.net) Spring Cloud Alibaba系列-一文讀懂Nacos原理 - 掘金 (juejin.cn) Nacos /nɑ:k??s/ 是 Dynamic Naming and Configuration Service的首字母簡稱,一個更易于構(gòu)建云原生應(yīng)用的動態(tài)服

    2024年02月08日
    瀏覽(121)
  • 【SpringCloud入門】-- Nacos快速入門之搭建服務(wù)與注冊中心

    【SpringCloud入門】-- Nacos快速入門之搭建服務(wù)與注冊中心

    目錄 前言: ?1.Nacos的下載與安裝 2. 去MySQL建立一個名為nacos的數(shù)據(jù)庫 3.介紹配置文件,conf目錄下的 application.properties 4.nacos啟動 5. nacos作為注冊中心的作用 6.建立一個項目,實現(xiàn)向命名空間注冊 前言: 上文我們已經(jīng)簡單介紹了一下Nacos,現(xiàn)在我們一起來動手搭建一個Nacos的注

    2024年02月09日
    瀏覽(21)
  • Spring Cloud 使用 k8s 作為注冊中心 開發(fā)環(huán)境 和 生產(chǎn)環(huán)境

    Spring Cloud 使用 k8s 作為注冊中心 開發(fā)環(huán)境 和 生產(chǎn)環(huán)境

    因為 k8s 本身就有擁有注冊中心,和配置中心的功能。如果還是用 Nacos、Eureka、Consul 之類的注冊中心組件,就有點冗余了。當(dāng)然這些組件還是可以繼續(xù)用的。 所以,本教程,教授 Spring Cloud 使用 k8s 的注冊中心。在開發(fā)環(huán)境和生產(chǎn)環(huán)境 的教程! 下面以一個最簡單的 服務(wù)消費

    2024年02月15日
    瀏覽(112)
  • nacos2.1.1版本,作為注冊中心,配置中心如何使用,nacos服務(wù)端啟動,微服務(wù)搭建,nacos集群化部署

    關(guān)于nacos 相信大多數(shù)人一樣,在接觸微服務(wù)的時候知道有Netflix系列和alibaba系列 但是Netflix這一套如今由于部分組件不在開源,又有alibaba這一套的出現(xiàn),市面上,alibaba系列微服務(wù)架構(gòu)已經(jīng)是最火熱的了,而nacos則是alibaba系列組件充當(dāng)服務(wù)注冊發(fā)現(xiàn)和配置中心的角色 說白了,就是將每個

    2024年02月03日
    瀏覽(22)
  • 【Spring Cloud】深入探索 Nacos 注冊中心的原理,服務(wù)的注冊與發(fā)現(xiàn),服務(wù)分層模型,負(fù)載均衡策略,微服務(wù)的權(quán)重設(shè)置,環(huán)境隔離

    【Spring Cloud】深入探索 Nacos 注冊中心的原理,服務(wù)的注冊與發(fā)現(xiàn),服務(wù)分層模型,負(fù)載均衡策略,微服務(wù)的權(quán)重設(shè)置,環(huán)境隔離

    在微服務(wù)架構(gòu)中,服務(wù)注冊中心是整個體系中的關(guān)鍵組件之一。它負(fù)責(zé)服務(wù)的注冊、發(fā)現(xiàn)和管理,為微服務(wù)之間的通信提供了基礎(chǔ)設(shè)施。在這方面,Nacos(Namespace Aware Clustered Object Storage)作為一種服務(wù)發(fā)現(xiàn)和配置管理系統(tǒng),提供了豐富的功能,旨在簡化微服務(wù)架構(gòu)中的服務(wù)注

    2024年02月06日
    瀏覽(1451)
  • window10環(huán)境下搭建ros

    window10環(huán)境下搭建ros

    vs2022下載地址 chocolatey是windows下的一個包管理工具,下載ros相關(guān)的包都采用這個工具。 安裝過程:在菜單欄中搜索 x64 Native Tools Command Prompt for VS 2022 (2),然后右擊選擇管理員運行,輸入: 確保您在C盤中有10GB的可用空間,用于安裝ROS系統(tǒng)。 還是以管理員方式打開 x64 Native T

    2024年02月05日
    瀏覽(32)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包