内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

SpringCloudGateway網(wǎng)關(guān)嘗鮮

Gateway 介紹

Spring Cloud Gateway是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技術(shù)開(kāi)發(fā)的網(wǎng)關(guān),Spring Cloud Gateway旨在為微服務(wù)架構(gòu)提供一種簡(jiǎn)單而有效的統(tǒng)一的API路由管理方式。Spring Cloud Gateway作為Spring Cloud生態(tài)系中的網(wǎng)關(guān),目標(biāo)是替代Netflix ZUUL,其不僅提供統(tǒng)一的路由方式,并且基于Filter鏈的方式提供了網(wǎng)關(guān)基本的功能,例如:安全,監(jiān)控/埋點(diǎn),和限流等。

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到昔陽(yáng)網(wǎng)站設(shè)計(jì)與昔陽(yáng)網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋昔陽(yáng)地區(qū)。

可能有同學(xué)就要問(wèn)了,不是已經(jīng)有Zuul了嗎,為什么又搞了一個(gè)網(wǎng)關(guān),這更新的節(jié)奏確實(shí)很快哈,沒(méi)精力還真學(xué)習(xí)不過(guò)來(lái)。

之所以新搞了一個(gè)網(wǎng)關(guān),是因?yàn)閆uul基于servlet 2.5 (works with 3.x),使用阻塞API。它不支持任何長(zhǎng)期的連接,如websocket。

Gateway建立在Spring Framework 5,Project Reactor和Spring Boot 2上,使用非阻塞API。支持Websockets,因?yàn)樗cSpring緊密集成,所以它會(huì)是一個(gè)讓開(kāi)發(fā)者有更好體驗(yàn)的框架。當(dāng)然性能的提升是肯定的,不然完全沒(méi)必要重新搞一個(gè)啊,只不過(guò)Zuul2出來(lái)的太遲了,自己已經(jīng)搞了一個(gè),所以不太可能會(huì)將Zuul2集成到Spring Cloud中了。

關(guān)于性能這塊的比較可以參考我周兄的文章《糾錯(cuò)帖:Zuul & Spring Cloud Gateway & Linkerd性能對(duì)比》

工作原理

如上圖所示,客戶端發(fā)送請(qǐng)求到Spring Cloud Gateway,Gateway Handler Mapping確定請(qǐng)求與路由匹配,則會(huì)將請(qǐng)求交給Gateway Web Handler處理。
在代理前后可以執(zhí)行多個(gè)過(guò)濾器。最后代理到具體的服務(wù)。

項(xiàng)目集成Gateway

首先還是最基本的步驟,創(chuàng)建一個(gè)Maven項(xiàng)目,添加Gateway需要的依賴信息:

<parent>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-parentartifactId>
    <version>2.0.1.RELEASEversion>
parent>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-dependenciesartifactId>
            <version>Finchley.RELEASEversion>
            <type>pomtype>
            <scope>importscope>
        dependency>
    dependencies>
dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.springframework.cloudgroupId>
        <artifactId>spring-cloud-starter-gatewayartifactId>
    dependency>
dependencies>

編寫啟動(dòng)類:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
 * 網(wǎng)關(guān)啟動(dòng)入口
 * 
 * @author yinjihuan
 * 
 * @about http://cxytiandi.com/about
 *
 */
@SpringBootApplication
public class GatewayApplication {
    public static void main(String[] args) {
        SpringApplication.run(GatewayApplication.class, args);
    }
}

簡(jiǎn)單路由示列

下面來(lái)實(shí)現(xiàn)一個(gè)最簡(jiǎn)單的轉(zhuǎn)發(fā)功能,基于Path的匹配轉(zhuǎn)發(fā)功能。

在resources下面建一個(gè)application.yml的文件, 內(nèi)容如下:

server:
  port: 8084
spring:
  cloud:
    gateway:
      routes:
      - id: path_route
        uri: http://cxytiandi.com
        predicates:
        - Path=/course

當(dāng)你訪問(wèn)http://localhost:8084/course的時(shí)候就會(huì)轉(zhuǎn)發(fā)到http://cxytiandi.com/course,效果如下:

Spring Cloud Gateway 網(wǎng)關(guān)嘗鮮

關(guān)于路由規(guī)則什么的我們后面再做介紹,本章只是先體驗(yàn)下Spring Cloud Gateway的功能,能夠創(chuàng)建一個(gè)新的項(xiàng)目,成功啟動(dòng)就可以了,一步步來(lái)。

如果你的項(xiàng)目中包含了spring-cloud-starter-gateway,但你不想啟動(dòng)網(wǎng)關(guān)的時(shí)候可以通過(guò)下面的配置禁用掉:

application.properties

spring.cloud.gateway.enabled=false.

application.yml

spring:
  cloud:
    gateway:
      enabled: false

上面講解的是基于配置的方式來(lái)實(shí)現(xiàn)路由,還有一種方式是通過(guò)代碼的方式來(lái)進(jìn)行路由,比如:

@Bean
public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
       return builder.routes()
              .route(r -> r.path("/course").uri("http://cxytiandi.com"))
              .build();
}

示列代碼:https://github.com/yinjihuan/spring-cloud/tree/master/fangjia-gateway

原文鏈接:https://mp.weixin.qq.com/s/92JDqjRcv452FfQUJxuRhw

分享名稱:SpringCloudGateway網(wǎng)關(guān)嘗鮮
URL分享:http://m.rwnh.cn/article42/iggeec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站設(shè)計(jì)服務(wù)器托管、網(wǎng)站策劃手機(jī)網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
登封市| 仁布县| 德江县| 海门市| 白山市| 七台河市| 稷山县| 昆明市| 新竹市| 贺兰县| 郯城县| 定日县| 孙吴县| 安乡县| 高邑县| 商城县| 林口县| 清河县| 文水县| 普兰店市| 清原| 新建县| 玉门市| 桐乡市| 宝丰县| 若羌县| 三原县| 盐山县| 吐鲁番市| 铜川市| 廉江市| 东港市| 互助| 五峰| 泰安市| 固阳县| 运城市| 息烽县| 木里| 吉水县| 白银市|