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

Spring Cloud Gateway集成Nacos作為注冊(cè)中心和配置中心

這篇具有很好參考價(jià)值的文章主要介紹了Spring Cloud Gateway集成Nacos作為注冊(cè)中心和配置中心。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

本篇文章將介紹Spring Cloud Alibaba體系下Spring Cloud Gateway的搭建,服務(wù)注冊(cè)中心和分布式配置中心使用Nacos,后續(xù)將會(huì)持續(xù)更新,介紹集成Sentinel,如何做日志鏈路追蹤,如何做全鏈路灰度發(fā)布設(shè)計(jì),以及Spring Cloud Gateway的擴(kuò)展等。

POM依賴

? Spring Boot,Spring Cloud,Discovery,Config等基礎(chǔ)依賴在父pom中已經(jīng)配置如下:

      <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2021.0.4.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.7.7</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>2021.0.5</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
	<dependencies>
	    <!-- bootstrap 啟動(dòng)器 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>
        
    		<!-- spring cloud alibaba nacos服務(wù)注冊(cè)發(fā)現(xiàn) -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        
    		<!-- spring cloud alibaba nacos配置中心 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lomnok.version}</version>
        </dependency>
        <!-- SpringCloud Gateway -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>
        
        <!-- SpringCloud Loadbalancer -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-loadbalancer</artifactId>
        </dependency>
    </dependencies>

配置文件

  • 本地bootstrap.yml配置文件

? 本地的配置文件指定網(wǎng)關(guān)服務(wù)的配置中心為nacos,指定共享配置文件${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension},其規(guī)則是服務(wù)名-active profile-spring.cloud.nacos.config.file-extension,所以此服務(wù)配置中心生效的配置文件為ruuby-gateway-dev.yml并且允許配置熱更新refresh-enabled: true。

spring:
  application:
    name: ruuby-gateway
  profiles:
    active: dev
  cloud:
    nacos:
      username: "nacos"
      password: "nacos"
      config:
        server-addr: 127.0.0.1:8848
        # namespace id
        namespace: 3ef5e608-6ee8-4881-8e50-ed47a5a04af2
        # 阿里云平臺(tái)ak,sk
        # access-key:
        # secret-key:
        # 配置文件格式
        file-extension: yml
        shared-configs:
          - ${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
        refresh-enabled: true
  • Nacos配置中心配置文件ruuby-gateway-dev.yml

? spring.cloud.nacos.dicovery配置服務(wù)發(fā)現(xiàn)注冊(cè)中心;

? spring.cloud.gateway配置網(wǎng)關(guān)路由信息,predicates配置根據(jù)Path進(jìn)行路由,id進(jìn)行服務(wù)發(fā)現(xiàn),uri: lb://account-svc通過(guò)負(fù)載均衡請(qǐng)求后端。

server:
  port: 8081
spring:
  application:
    name: ruuby-gateway
  profiles:
    active: dev
  cloud:
    nacos:
      username: "nacos"
      password: "nacos"
      discovery:
        # 服務(wù)注冊(cè)中心地址
        server-addr: 127.0.0.1:8848
        # 阿里云平臺(tái)ak,sk
        # access-key:
        # secret-key:
        namespace: 3ef5e608-6ee8-4881-8e50-ed47a5a04af2
      config:
        server-addr: 127.0.0.1:8848
        # 阿里云平臺(tái)ak,sk
        # access-key:
        # secret-key:
        # 配置文件格式
        file-extension: yml
        shared-configs:
          - ${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
        namespace: 3ef5e608-6ee8-4881-8e50-ed47a5a04af2
        group: DEFAULT-GROUP
    gateway:
      routes:
        - id: account-svc
          uri: lb://account-svc
          predicates:
            - Path=/gateway/account/**
          filters:
            - StripPrefix=1
            # url黑名單 這是一個(gè)局部過(guò)濾器
            # - name: BlackListUrlFilter
            #   args: 
            #     blackListUrl:
            #       - /account/list
            # 鑒權(quán)過(guò)濾器
            # - name: AuthFilter
            #   args: 
            #     type: jwt
            #     publicKey: 11111
        - id: order-svc
          uri: lb://order-svc
          predicates:
            - Path=/gateway/order/**
          filters:
            - StripPrefix=1
# 監(jiān)控指標(biāo)收集endpoint
management:
  endpoints:
    web:
      exposure:
        include: "*"

網(wǎng)關(guān)啟動(dòng)

@SpringBootApplication
@EnableDiscoveryClient
public class GateWayApplication {

    public static void main(String[] args) {
        SpringApplication.run(GateWayApplication.class, args);
    }
}

? 出現(xiàn)下面的日志,啟動(dòng)成功,這里日志的格式是經(jīng)過(guò)日志插件格式化的,后面會(huì)單獨(dú)寫一篇日志插件的文檔。

{"@timestamp":"2023-05-22T17:21:27.100+08:00","@version":"0.0.1","message":"Spring Cloud LoadBalancer is currently working with the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.","logger_name":"org.springframework.cloud.loadbalancer.config.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger","thread_name":"main","level":"WARN","level_value":30000}
{"@timestamp":"2023-05-22T17:21:27.767+08:00","@version":"0.0.1","message":"Started GateWayApplication in 7.757 seconds (JVM running for 8.699)","logger_name":"io.redick.cloud.account.GateWayApplication","thread_name":"main","level":"INFO","level_value":20000}

網(wǎng)關(guān)轉(zhuǎn)發(fā)請(qǐng)求測(cè)試

? 接口請(qǐng)求地址為http://127.0.0.1:8081/gateway/order/accountLis,是通過(guò)網(wǎng)關(guān)轉(zhuǎn)發(fā)的,匹配了/gateway/order/*規(guī)則,將請(qǐng)求轉(zhuǎn)發(fā)到order-svc服務(wù)。

?  ~ curl -X GET http://127.0.0.1:8081/gateway/order/accountList
{"code":200,"msg":null,"data":[{"pageIndex":0,"pageSize":10,"orderByColumn":"","asc":"asc","productId":"123","totalCount":200,"productName":"華為P100","beginTime":null,"endTime":null,"productDesc":"華為手機(jī)牛逼"},{"pageIndex":0,"pageSize":10,"orderByColumn":"","asc":"asc","productId":"200","totalCount":100,"productName":"華為Mate100","beginTime":null,"endTime":null,"productDesc":"華為手機(jī)真牛逼"}]}

? 下面是不通過(guò)網(wǎng)關(guān)轉(zhuǎn)發(fā)訪問(wèn)該接口,通過(guò)對(duì)比可以看到網(wǎng)關(guān)實(shí)現(xiàn)了請(qǐng)求轉(zhuǎn)發(fā)和負(fù)載均衡,并且網(wǎng)關(guān)通過(guò)應(yīng)用名進(jìn)行服務(wù)發(fā)現(xiàn)。

?  ~ curl -X GET http://127.0.0.1:8089/order/accountList
{"code":200,"msg":null,"data":[{"pageIndex":0,"pageSize":10,"orderByColumn":"","asc":"asc","productId":"123","totalCount":200,"productName":"華為P100","beginTime":null,"endTime":null,"productDesc":"華為手機(jī)牛逼"},{"pageIndex":0,"pageSize":10,"orderByColumn":"","asc":"asc","productId":"200","totalCount":100,"productName":"華為Mate100","beginTime":null,"endTime":null,"productDesc":"華為手機(jī)真牛逼"}]}

源碼

源碼參考GitHub,如果對(duì)您有幫助麻煩點(diǎn)個(gè)贊支持下,謝謝!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-507070.html

到了這里,關(guān)于Spring Cloud Gateway集成Nacos作為注冊(cè)中心和配置中心的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(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)文章

  • Spring Cloud Alibaba--Nacos服務(wù)注冊(cè)和配置中心

    Spring Cloud Alibaba--Nacos服務(wù)注冊(cè)和配置中心

    Nacos 是Dynamic Naming and Configuration Service的首字母簡(jiǎn)稱,一個(gè)更易于構(gòu)建云原生應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。 Nacos的特性,官網(wǎng)解釋如下: 服務(wù)發(fā)現(xiàn)和服務(wù)健康監(jiān)測(cè) Nacos 支持基于 DNS 和基于 RPC 的服務(wù)發(fā)現(xiàn)。服務(wù)提供者使用 原生SDK、OpenAPI、或一個(gè)獨(dú)立的Age

    2024年02月05日
    瀏覽(117)
  • Spring Cloud集成Nacos實(shí)現(xiàn)服務(wù)配置中心 | Spring Cloud 7

    先我們來(lái)看一下,微服務(wù)架構(gòu)下關(guān)于配置文件的一些問(wèn)題: 配置文件相對(duì)分散。在一個(gè)微服務(wù)架構(gòu)下,配置文件會(huì)隨著微服務(wù)的增多變的越來(lái)越多,而且分散在各個(gè)微服務(wù)中,不好統(tǒng)一配置和管理。 配置文件無(wú)法區(qū)分環(huán)境,開(kāi)發(fā)環(huán)境、測(cè)試環(huán)境、線上環(huán)境。微服務(wù)項(xiàng)目可能會(huì)

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

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

    2024年02月08日
    瀏覽(121)
  • 【深入了解Spring Cloud Alibaba Nacos:服務(wù)注冊(cè)和配置中心】—— 每天一點(diǎn)小知識(shí)

    【深入了解Spring Cloud Alibaba Nacos:服務(wù)注冊(cè)和配置中心】—— 每天一點(diǎn)小知識(shí)

    ??????????????????????????????????????????????????????????? ?? 深入了解 S p r i n g C l o u d A l i b a b a N a c o s :服務(wù)注冊(cè)和配置中心 color{#FF1493}{深入了解Spring Cloud Alibaba Nacos:服務(wù)注冊(cè)和配置中心} 深入了解 Sp r in g Cl o u d A l ibaba N a cos :服務(wù)注

    2024年02月11日
    瀏覽(93)
  • 手把手帶你實(shí)現(xiàn)Dubbo集成Nacos作為注冊(cè)中心(超詳細(xì)+全代碼)

    手把手帶你實(shí)現(xiàn)Dubbo集成Nacos作為注冊(cè)中心(超詳細(xì)+全代碼)

    Nacos簡(jiǎn)介 什么是Nacos? Nacos /nɑ:k??s/ 是 Dynamic Naming and Configuration Service的首字母簡(jiǎn)稱,一個(gè)更易于構(gòu)建云原生應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。 Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡(jiǎn)單易用的特性集,幫助您快速實(shí)現(xiàn)動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、服

    2024年02月09日
    瀏覽(86)
  • Spring Cloud Gateway集成Nacos實(shí)現(xiàn)負(fù)載均衡

    Spring Cloud Gateway集成Nacos實(shí)現(xiàn)負(fù)載均衡

    ??Nacas可以用于實(shí)現(xiàn)Spring Cloud Gateway中網(wǎng)關(guān)動(dòng)態(tài)路由功能,也可以基于Nacos來(lái)實(shí)現(xiàn)對(duì)后端服務(wù)的負(fù)載均衡,前者利用Nacos配置中心功能,后者利用Nacos服務(wù)注冊(cè)功能。 接下來(lái)我們來(lái)看下Gateway集成Nacos實(shí)現(xiàn)負(fù)載均衡的架構(gòu)圖 一. 環(huán)境準(zhǔn)備 1. 版本環(huán)境 Jdk: java.version1.8/java.version Spr

    2024年02月10日
    瀏覽(97)
  • 【微服務(wù) Spring Cloud Alibaba】- Nacos 服務(wù)注冊(cè)中心

    【微服務(wù) Spring Cloud Alibaba】- Nacos 服務(wù)注冊(cè)中心

    目錄 1. 什么是注冊(cè)中心? 1.2 注冊(cè)中心的作用 2. SpringBoot 整合 Nacos 實(shí)現(xiàn)服務(wù)注冊(cè)中心 2.1 將服務(wù)注冊(cè)到 Nacos 2.2 實(shí)現(xiàn)消費(fèi)者 3. 服務(wù)列表各個(gè)參數(shù)的含義、作用以及應(yīng)用場(chǎng)景 注冊(cè)中心是微服務(wù)架構(gòu)中的一個(gè)重要組件,它用于實(shí)現(xiàn) 服務(wù)注冊(cè) 與 服務(wù)發(fā)現(xiàn) 。 【思考一】什么叫服務(wù)

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

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

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

    2024年02月15日
    瀏覽(112)
  • Spring Cloud微服務(wù)在Windows本地開(kāi)發(fā)時(shí)禁用Nacos注冊(cè)中心注冊(cè)

    Spring Cloud微服務(wù)在Windows本地開(kāi)發(fā)時(shí)禁用Nacos注冊(cè)中心注冊(cè)

    碼到三十五 : 個(gè)人主頁(yè) 心中有詩(shī)畫,指尖舞代碼,目光覽世界,步履越千山,人間盡值得 ! 本文將介紹如何在Spring Cloud微服務(wù)架構(gòu)中,實(shí)現(xiàn)在Windows本地開(kāi)發(fā)環(huán)境下禁用服務(wù)自動(dòng)注冊(cè)到Nacos注冊(cè)中心,而在Linux服務(wù)器環(huán)境下則自動(dòng)啟用注冊(cè)功能。這樣的配置有助于開(kāi)發(fā)者在本

    2024年03月18日
    瀏覽(107)
  • SpringCloud + Gateway(網(wǎng)關(guān)) + Nacos(注冊(cè)中心+配置中心)+ Dubbo(內(nèi)部服務(wù)調(diào)用)

    SpringCloud + Gateway(網(wǎng)關(guān)) + Nacos(注冊(cè)中心+配置中心)+ Dubbo(內(nèi)部服務(wù)調(diào)用)

    Apache Dubbo是一款微服務(wù)開(kāi)發(fā)框架,它提供了 RPC通信 與 微服務(wù)治理 兩大關(guān)鍵能力 1、協(xié)議支持方面 Feign更加優(yōu)雅簡(jiǎn)單。Feign是通過(guò)REST API實(shí)現(xiàn)的遠(yuǎn)程調(diào)用,基于Http傳輸協(xié)議,服務(wù)提供者需要對(duì)外暴露Http接口供消費(fèi)者調(diào)用,服務(wù)粒度是http接口級(jí)的。通過(guò)短連接的方式進(jìn)行通信,

    2024年02月06日
    瀏覽(1436)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包