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

【微服務】SpringCloud-Nacos注冊中心

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

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??博客主頁:??@不會壓彎的小飛俠
?歡迎關注:??點贊??收藏?留言?
?系列專欄:??SpringCloud專欄
?知足上進,不負野心。
??歡迎大佬指正,一起學習!一起加油!

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java


??服務注冊到nacos

Nacos是SpringCloudAlibaba的組件,而SpringCloudAlibaba也遵循SpringCloud中定義的服務注冊、服務發(fā)現規(guī)范。因此使用Nacos和使用Eureka對于微服務來說,并沒有太大區(qū)別。

  • 主要差異在于:
    • 依賴不同
    • 服務地址不同

??引入依賴

1.在cloud-demo父工程的pom文件中引SpringCloudAlibaba的依賴

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
    <version>2.2.6.RELEASE</version>
    <type>pom</type>
    <scope>import</scope>
</dependency>

2.注釋掉order-service和user-service中原有的eureka依賴

 <!--eureka客戶端依賴-->
       <!-- <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>-->

3.在user-service&order-service中的application.yml文件注釋掉eureka配置

# 注冊服務到eureka上
#eureka:
#  client:
#    service-url:
#      # eureka的地址信息,注冊到 eureka 上
#      defaultZone: http://127.0.0.1:8083/eureka

4.在user-service和order-service中的pom文件中引入nacos-discovery依賴:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

??配置nacos地址

4.在user-service&order-service中的application.yml文件,添加nacos地址

spring:
  cloud:
    nacos:
      server-addr: localhost:8848

??重啟

5.重啟微服務后,登錄nacos管理頁面,可以看到微服務信息

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
還可以點擊詳情,查看詳細信息

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
訪問orderservice,查看日志

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??服務分級存儲模型

Nacos就將同一機房內的實例 劃分為一個集群。
user-service是服務,一個服務可以包含多個集群,如杭州、上海,每個集群下可以有多個實例,形成分級模型,如圖:
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
微服務互相訪問時,應該盡可能訪問同集群實例,因為本地訪問速度更快。當本集群內不可用時,才訪問其它集群。
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
杭州機房內的order-service應該優(yōu)先訪問同機房的user-service。

  • Nacos服務分級存儲模型
    • 一級是服務,例如userservice
    • 二級是集群,例如杭州或上海
    • 三級是實例,例如杭州機房的某臺部署了userservice的服務器

??設置實例的集群屬性

??user-service配置集群

1.修改user-service的application.yml文件,添加集群配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ # 集群名稱

重啟兩個user-service實例在nacos控制臺查看結果:

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
2.再次修改user-service的application.yml文件,添加集群配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: SH # 集群名稱

啟動UserApplication,在nacos控制臺查看結果:

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??同集群優(yōu)先的負載均衡

默認的ZoneAvoidanceRule并不能實現根據同集群優(yōu)先來實現負載均衡。Nacos中提供了一個NacosRule的實現,可以優(yōu)先從同集群中挑選實例。

??order-service配置集群信息

1.修改order-service的application.yml文件,添加集群配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ # 集群名稱

啟動OrderApplication,在nacos控制臺查看結果:
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??修改負載均衡規(guī)則

2.修改order-service的application.yml文件,修改負載均衡規(guī)則:

userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # 負載均衡規(guī)則 

重啟orderservice服務,三個user-service都有查詢實現負載均衡下圖所示:

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

  • NacosRule負載均衡策略
    • 優(yōu)先選擇同集群服務實例列表
    • 本地集群找不到提供者,才去其它集群尋找,并且會
      報警告
    • 確定了可用實例列表后,再采用隨機負載均衡挑選實

??權重配置

1.在nacos控制臺,找到user-service的實例列表,點擊編輯,即可修改權重:

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
2.將端口號8082的權重修改為0.1,權重修改為0,則該實例永遠不會被訪問

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
3.修改成功

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
4.在瀏覽器訪問orderservice服務,訪問多次,控制臺查看日志該實例就被訪問1次。

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
5.權重修改為0

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
6.該實例永遠不會被訪問

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

  • 實例的權重控制
    • Nacos控制臺可以設置實例的權重值,0~1之間
    • 同集群內的多個實例,權重越高被訪問的頻率越高
    • 權重設置為O則完全不會被訪問

??環(huán)境隔離

Nacos提供了namespace來實現環(huán)境隔離功能。
nacos中可以有多個namespace,不同namespace之間相互隔離,不同namespace的服務互相不可見。

  • Nacos環(huán)境隔離
    • namespace用來做環(huán)境隔離
    • 每個namespace都有唯一id
    • 不同namespace下的服務不可見

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??創(chuàng)建namespace

1.默認情況下,所有service都在同一個namespace,名為public,點擊命名空間,然后點擊新建命名空間,添加一個namespace

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
2.填寫表單

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
3.新的namespace就創(chuàng)建好了

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
4.點擊private查看服務

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??給微服務配置namespace

1.修改order-service的application.yml文件:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ
        namespace: a8fdddb1-7104-4d6b-8a74-e4c5d414405f #命名空間ID

2.重啟order-service后,訪問控制臺

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
3.訪問order-service,因為namespace不同,會導致找不到userservice,控制臺會報錯

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java
修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java

??Nacos與Eureka的區(qū)別

  • Nacos的服務實例分為兩種l類型:

    • 臨時實例:如果實例宕機超過一定時間,會從服務列表剔除,默認的類型。
    • 非臨時實例:如果實例宕機,不會從服務列表剔除,也可以叫永久實例。
  • 配置一個服務實例為永久實例:

spring:
  cloud:
    nacos:
      discovery:
        ephemeral: false # 設置為非臨時實例,默認為true

設置成功:

修改nacos服務名,SpringCloud微服務分布式架構,spring cloud,微服務,java文章來源地址http://www.zghlxwxcb.cn/news/detail-785050.html

  • Nacos與eureka的共同點
    • 都支持服務注冊和服務拉取
    • 都支持服務提供者心跳方式做健康檢測
  • Nacos與Eureka的區(qū)別
    • Nacos支持服務端主動檢測提供者狀態(tài):臨時實例采用心跳模式,非臨時實例采用主動檢測模式
    • 臨時實例心跳不正常會被剔除,非臨時實例則不會被剔除
    • Nacos支持服務列表變更的消息推送模式,服務列表更新更及時
    • Nacos集群默認采用AP方式,當集群中存在非臨時實例時,采用CP模式;Eureka采用AP方式

到了這里,關于【微服務】SpringCloud-Nacos注冊中心的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

領支付寶紅包贊助服務器費用

相關文章

  • springcloud使用nacos搭建注冊中心

    springcloud使用nacos搭建注冊中心

    nacos安裝這里就不細說了,(Nacos下載以及搭建環(huán)境_你非檸檬為何心酸142的博客-CSDN博客) 大家也可以去網上安裝好,這里主要講搭建 ,我們需要手動啟動nacos, 輸入(.startup.cmd?-m?standalone),出現一下圖標就代表ok ?下面是我的pom.xml文件 ?首先是父工程所需要的依賴,需要注意的

    2024年02月08日
    瀏覽(90)
  • SpringCloud 注冊中心(Nacos)快速入門

    SpringCloud 注冊中心(Nacos)快速入門

    作者:大三的土狗 專欄:SpringCloud ??Nacos一個更易于構建云原生應用的動態(tài)服務發(fā)現、配置管理和服務管理平臺,目前來看還是大多數公司使用Nacos多于Eureka。 ??Nacos 致力于幫助您發(fā)現、配置和管理微服務。Nacos 提供了一組簡單易用的特性集,幫助您快速實現動態(tài)服務發(fā)

    2024年02月03日
    瀏覽(89)
  • SpringCloud(17~21章):Alibaba入門簡介、Nacos服務注冊和配置中心、Sentinel實現熔斷與限流、Seata處理分布式事務

    SpringCloud(17~21章):Alibaba入門簡介、Nacos服務注冊和配置中心、Sentinel實現熔斷與限流、Seata處理分布式事務

    Spring Cloud Netflix項目進入維護模式 https://spring.io/blog/2018/12/12/spring-cloud-greenwich-rc1-available-now 說明 Spring Cloud Netflix Projects Entering Maintenance Mode 什么是維護模式 將模塊置于維護模式,意味著 Spring Cloud 團隊將不會再向模塊添加新功能。我們將修復 block 級別的 bug 以及安全問題,我

    2024年01月19日
    瀏覽(43)
  • SpringCloud(2) 注冊中心Eureka、Nacos

    SpringCloud(2) 注冊中心Eureka、Nacos

    注冊中心是微服務中必須要使用的組件,考察我們使用微服務的程度。 注冊中心的核心作用是:服務注冊和發(fā)現。 常見的注冊中心: Eureka、Nacos 、Zookeeper 下面我們以 Eureka 注冊中心為例,說一下注冊中心的作用: 假如我們有一個訂單服務 order-service ,需要消費用戶服務 u

    2024年02月11日
    瀏覽(16)
  • springcloud整合nacos實現注冊發(fā)現中心

    springcloud整合nacos實現注冊發(fā)現中心

    高可用性:Nacos是一個高可用的注冊中心,它支持多節(jié)點部署和集群模式,保證了服務的穩(wěn)定性和可用性。當某個節(jié)點發(fā)生故障時,其他節(jié)點可以接管服務注冊和發(fā)現的功能,確保系統(tǒng)的正常運行。 動態(tài)配置:Nacos不僅可以作為注冊中心,還提供了配置中心的功能。Spring Clo

    2024年02月16日
    瀏覽(23)
  • 注冊中心/配置管理 —— SpringCloud Alibaba Nacos

    注冊中心/配置管理 —— SpringCloud Alibaba Nacos

    Nacos 是一個易于使用的動態(tài)服務發(fā)現、配置和服務管理平臺,用于構建云原生的應用程序 Nacos 的關鍵特性包括以下幾項: 服務發(fā)現和服務健康監(jiān)測:服務提供者使用原生 SDK、OpenAPI 等注冊服務后,服務消費者可以使用 HTTPAPI 查找和發(fā)現服務。Nacos 提供對服務的實時健康檢查

    2024年02月14日
    瀏覽(113)
  • SpringCloud實用篇1——eureka注冊中心 Ribbon負載均衡原理 nacos注冊中心

    SpringCloud實用篇1——eureka注冊中心 Ribbon負載均衡原理 nacos注冊中心

    單體架構: 將業(yè)務的所有功能集中在一個項目中開發(fā),打成一個包部署。 優(yōu)點:架構簡單;部署成本低(打jar包、部署、負載均衡就完成了) 缺點:耦合度高(維護困難、升級困難,不利于大項目開發(fā)) 分布式架構 根據業(yè)務功能對系統(tǒng)做拆分,每個業(yè)務功能模塊作為獨立

    2024年02月13日
    瀏覽(19)
  • springcloud-nacos簡述

    springcloud-nacos簡述

    Spring Cloud alibaba: nacos服務注冊中心,配置中心 1.項目父工程添加springcloudalibaba依賴 2.將想要暴露的服務對應的pom文件中添加如下依賴 3.工程相應yml文件配置 配置完畢后啟動content服務,nacos中觀察。 需要配置的服務中要引入nacos的config依賴 第一部分:application.yaml中配置的應用

    2024年02月10日
    瀏覽(17)
  • 【Java項目】SpringCloud項目注冊到Nacos中心時顯示的是內網IP導致不同服務器之間無法互相調用接口的解決并發(fā)

    【Java項目】SpringCloud項目注冊到Nacos中心時顯示的是內網IP導致不同服務器之間無法互相調用接口的解決并發(fā)

    微服務項目地址—動動你發(fā)財的小手點一個stars吧 出現這個問題是之前我也就遇到過的,這個問題的情況就是: 我們知道微服務項目是可以把不同的項目部署在不同的服務器上從而減少某一臺服務器的壓力,我們只需要為每一個服務配置一個注冊中心即可,然后一個服務需要

    2024年02月16日
    瀏覽(30)
  • SpringCloud-Nacos集群搭建

    SpringCloud-Nacos集群搭建

    本文詳細介紹了如何在SpringCloud環(huán)境中搭建Nacos集群,為讀者提供了一份清晰而詳盡的指南。通過逐步演示每個關鍵步驟,包括安裝、配置以及Nginx的負載均衡設置,讀者能夠輕松理解并操作整個搭建過程。? Nacos(Naming and Configuration Service)是一個用于服務發(fā)現、動態(tài)配置管理

    2024年02月20日
    瀏覽(15)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包