Fizz Gateway 2.7.0 veröffentlicht, unterstützt Graustufenveröffentlichung

v2.7.0

Änderungsprotokoll:

Graustufen-Publishing-Plugin hinzugefügt,
unterstützt benutzerdefiniertes OAuth ,
unterstützt Erinnerungen an neue Versionen
, optimierte Schnittstellenstatistiken und Alarmprotokolle

Graustufen-Publishing -Plug
-in hinzufügen. Benutzerdefiniertes OAuth
unterstützen. Benachrichtigung über neue Version unterstützen
. API-Statistiken und Alarmprotokoll optimieren

Was ist Fizz Gateway?

Ein Aggregations-API-Gateway in Java. Fizz Gateway ist ein Microservice-Aggregations-Gateway, das auf der Basis von Java entwickelt wurde. Es ist eine lokalisierte Alternative zu Anwendungs-Gateways mit unabhängigen geistigen Eigentumsrechten. Es kann Hot-Service-Orchestrierung und -Aggregation, automatische Autorisierungsauswahl und Online-Service-Skriptcodierung realisieren , Für Online-Tests, Hochleistungs-Routing, API-Audit-Management, Callback-Management und andere Zwecke verfügt es über ein leistungsstarkes benutzerdefiniertes Plug-in-System, das selbst erweitert werden kann, und bietet eine benutzerfreundliche grafische Konfigurationsoberfläche, die Unternehmen schnell bei der Verwaltung helfen kann API-Dienste und Reduzierung von Middle-Layer-Glue-Code sowie Reduzierung der Codierungsinvestitionen und Verbesserung der Stabilität und Sicherheit von API-Diensten.

Demoumgebung (Demo)

http://demo.fizzgate.com/

Konto/Passwort: admin/Aa123!

Health-Check-Adresse: http://demo.fizzgate.com/admin/health  (Für die Online-Version schränken Sie bitte den externen Netzwerkzugriff des Admin-Pfads ein)

API-Adresse: http://demo.fizzgate.com/proxy/[Dienstname]/[API_Pfad]

Fizz's Design

Typische Anwendungsszenarien von Fizz

Produktmerkmale

  • Clusterverwaltung: Fizz-Gateway-Knoten sind zustandslos, die Konfigurationsinformationen werden automatisch synchronisiert und es unterstützt die horizontale Erweiterung von Knoten und die Bereitstellung mehrerer Cluster.
  • Sicherheitsautorisierung: Unterstützt integrierte Key-Auth-, JWT- und Basic-Auth-Autorisierungsmethoden und kann einfach gesteuert werden.
  • Service-Orchestrierung: Unterstützt HTTP-, Dubbo-, gRPC-, Soap-Protokoll-Hot-Service-Orchestrierungsfunktionen, unterstützt Front-End- und Back-End-Codierung, unterstützt JSON/XML-Ausgabe und aktualisiert die API jederzeit und überall.
  • Load-Balancing: Unterstützt Round-Robin-Load-Balancing.
  • Multi-Registry: Unterstützt die Diensterkennung von Eureka- oder Nacos-Registries.
  • Configuration Center: Unterstützt den Zugriff auf das Apollo Configuration Center.
  • HTTP-Reverse-Proxy: Blenden Sie den echten Back-End-Dienst aus und unterstützen Sie den Rest-API-Reverse-Proxy.
  • Zugriffsrichtlinie: Unterstützung verschiedener Richtlinien für den Zugriff auf verschiedene APIs, Konfiguration verschiedener Authentifizierungen usw.
  • Schwarze und weiße IP-Liste: Unterstützt die Konfiguration der schwarzen und weißen IP-Liste.
  • Benutzerdefinierte Plug-Ins: Ein leistungsstarker Plug-In-Mechanismus unterstützt die kostenlose Erweiterung.
  • Erweiterbar: Einfacher und benutzerfreundlicher Plug-In-Mechanismus ermöglicht erweiterte Funktionalität.
  • Hohe Leistung: Die Leistung ist unter vielen Gateways hervorragend.
  • Versionskontrolle: Unterstützt die Veröffentlichung und mehrere Rollbacks von Vorgängen.
  • Verwaltungshintergrund: Konfigurieren Sie den Gateway-Cluster über die Verwaltungshintergrundschnittstelle.
  • Rückrufverwaltung: Unterstützt Rückrufverwaltung, Abonnement, Wiedergabe und Protokollierung.
  • Mehrstufige Strombegrenzung: Zu den feinkörnigen Strombegrenzungsmethoden gehören die Servicestrombegrenzung, die Schnittstellenstrombegrenzung, die APP_ID-Strombegrenzung und die IP-Strombegrenzung.
  • Microservice-Dokumente: Die Verwaltung auf Unternehmensebene eröffnet das Microservice-Dokumentenmanagement und macht die Systemintegration bequemer.
  • Öffentliche Netz-Standleitung: Richten Sie einen vollständig geschützten privaten Verbindungskanal im öffentlichen Netz ein.
  • Policy-Circuit-Breaker: Führen Sie mehrere Recovery-Strategie-Circuit-Breaker-Konfigurationen basierend auf Diensten oder bestimmten Adressen durch.

Benchmarks

Wir haben Fizz mit den wichtigsten Gateway-Produkten auf dem Markt verglichen, wobei wir dieselbe Umgebung und dieselben Bedingungen verwendet und einen einzelnen Knoten getestet haben. Die Mock-Schnittstelle simuliert eine Verzögerung von 20 ms und die Paketgröße beträgt etwa 2 KB.

  • Intel(R) Xeon(R) CPU E5-2650 v3 bei 2,30 GHz * 4
  • Linux-Version 3.10.0-957.21.3.el7.x86_64
  • 8 GB Arbeitsspeicher
Einstufung Produkt 600
QPS gleichzeitig
600 gleichzeitig
90 % Latenz (ms)
1000
QPS gleichzeitig
1000 gleichzeitig
90 % Latenz (ms)
Backend-Dienst Direkter Zugriff auf Backend-Dienste 23540 32.19 27325 52.09
Verkehrsgateway Kong
v2.4.1
15662 50.87 17152 84.3
Anwendungsgateway fizz-gateway-community
v2.0.0
12206 65.76 12766 100.34
Anwendungsgateway spring-cloud-gateway
v2.2.9
11323 68.57 10472 127,59
Anwendungsgateway shenyu
v2.3.0
9284 92,98 9939 148.61

Versionsvergleich

  • Fizz-Gateway-Community: Community Edition

  • Fizz-Manager-Professional: Management-Hintergrund Professional-Version (Server)

  • Fizz-admin-professional: Professionelle Version für den Admin-Hintergrund (Frontend)

Fizz-Gateway-Community Fizz-Manager-Profi Fizz-Admin-Profi
v1.0.0 v1.0.0 v1.0.0
v1.1.0 v1.1.0 v1.1.0
v1.1.1 v1.1.1 v1.1.1
v1.2.0 v1.2.0 v1.2.0

Seit v1.3.0 werden das Frontend und die Serverseite des Verwaltungshintergrunds in einem Paket zusammengeführt

  • Fizz-Gateway-Community: Community Edition

  • Fizz-Manager-Professional: Management-Hintergrund

Fizz-Gateway-Community Fizz-Manager-Profi
v1.3.0 v1.3.0
v1.4.0 v1.4.0
v1.4.1 v1.4.1
v1.5.0 v1.5.0
v1.5.1 v1.5.1
v2.0.0 v2.0.0
v2.1.0 v2.1.0
v2.2.0 v2.2.0
v2.2.1 v2.2.1
v2.2.3 v2.2.3
v2.3.0 v2.3.0
v2.3.2 v2.3.2
v2.3.3 v2.3.3
v2.4.0 v2.4.0
v2.4.1 v2.4.1
v2.5.0 v2.5.0
v2.5.1 v2.5.1
v2.5.2 v2.5.2
v2.6.0 v2.6.0
v2.6.1 v2.6.1
v2.6.2 v2.6.2
v2.6.3 v2.6.3
v2.6.4 v2.6.4
v2.6.5 v2.6.5
v2.6.6 v2.6.6
v2.7.0 v2.7.0

Bitte laden Sie die entsprechende Management-Hintergrundversion entsprechend der Version der Community-Version herunter

Bereitstellungsanweisungen

Ausführliches Bereitstellungs-Tutorial >>>

Abhängigkeiten installieren

Installieren Sie die folgenden Abhängigkeiten:

  • Redis 2.8 oder höher
  • MySQL 5.7 oder höher
  • Apollo Konfigurationszentrum (optional)
  • Eureka- oder Nacos-Dienstregistrierung (optional)

Informationen zur Installation von Abhängigkeiten finden Sie im ausführlichen Bereitstellungs-Tutorial

Fizz installieren

1. Installieren Sie den Verwaltungshintergrund

从github的releases(https://wj.qq.com/s2/8682608/8fe2/) 下载 fizz-manager-professional 安装包

管理后台(fizz-manager-professional)

说明:

  1. 以下安装步骤出现的{version}表示所使用管理后台的版本号,例如1.3.0

安装方式一:二进制安装包

  1. 解压fizz-manager-professional-{version}.zip安装包
  2. 首次安装执行fizz-manager-professional-{version}-mysql.sql数据库脚本,从低版本升级至高版本选择执行update目录下对应升级脚本
  3. 修改application-prod.yml文件,将相关配置修改成部署环境的配置
  4. Linux启动 执行 chmod +x boot.sh 命令给boot.sh增加执行权限;执行 ./boot.sh start 命令启动服务,支持 start/stop/restart/status命令
  5. Windows启动 执行.\boot.cmd start 命令启动服务,支持 start/stop/restart/status命令

安装方式二(v2.0.0或以上版本):docker:

  1. 下载对应版本的镜像:docker pull fizzgate/fizz-manager-professional:{version}
  2. 通过环境变量方式修改redis配置、database配置(其它配置同理)并运行镜像
docker run --rm -d -p 8000:8000 \
-e "spring.redis.host={your redis host IP}" \
-e "spring.redis.port={your redis port}" \
-e "spring.redis.password={your redis password}" \
-e "spring.redis.database={your redis database}" \
-e "spring.datasource.url=jdbc:mysql://{your MySQL database host IP}:3306/fizz_manager?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true" \
-e "spring.datasource.username={your MySQL database username}" \
-e "spring.datasource.password={your MySQL database password}" \
fizzgate/fizz-manager-professional:{version}

或通过映射目录方式使用外部配置文件和输出日志到宿主机, 配置文件可从安装包里获取,在宿主机创建fizz-manager-professional/config和fizz-manager-professional/logs目录,把application-prod.yml配置文件放置config下,在fizz-manager-professional目录下运行镜像

cd fizz-manager-professional
docker run --rm -d -p 8000:8000 \
-v $PWD/config:/opt/fizz-manager-professional/config \
-v $PWD/logs:/opt/fizz-manager-professional/logs fizzgate/fizz-manager-professional:{version}

服务启动后访问 http://{部署机器IP地址}:8000/#/login,使用超级管理员账户admin密码Aa123!登录

二、安装fizz-gateway-community社区版

说明:

  1. 支持配置中心:apollo、nacos,支持注册中心:eureka、nacos,详细配置方法查看application.yml文件。
  2. 如果使用apollo配置中心,可把application.yml文件内容迁到配置中心(apollo上应用名为:fizz-gateway);如果不使用apollo可去掉下面启动命令里的apollo参数。
  3. 以下安装步骤出现的{version}表示所使用网关的版本号,例如1.3.0

安装方式一:二进制安装包

  1. 下载fizz-gateway-community的二进制安装包,解压修改application.yml配置文件里配置中心、注册中心、redis(redis配置需与管理后台一致)的配置
  2. 根据需要修改boot.sh脚本的apollo连接,不使用apollo配置中心可跳过
  3. Linux启动 执行 ./boot.sh start 命令启动服务,支持 start/stop/restart/status命令
  4. Windows启动 执行.\boot.cmd start 命令启动服务,支持 start/stop/restart/status命令

安装方式二:源码安装:

  1. 本地clone仓库上的最新代码,修改application.yml配置文件里配置中心、注册中心、redis(redis配置需与管理后台一致)的配置
  2. 在项目根目录fizz-gateway-community下执行Maven命令mvn clean package install -DskipTests=true
  3. 在项目目录fizz-gateway-community/fizz-bootstrap下执行Maven命令mvn clean package -DskipTests=true
  4. 进入fizz-gateway-community/fizz-bootstrap/target/fizz-gateway-community目录,执行 ./boot.sh start 命令启动服务,支持 start/stop/restart/status命令

安装方式三(v2.0.0或以上版本):docker:

  1. 下载对应版本的镜像:docker pull fizzgate/fizz-gateway-community:{version}
  2. 通过环境变量方式修改redis配置(其它配置同理)并运行镜像
docker run --rm -d -p 8600:8600 \
-e "aggregate.redis.host={your redis host IP}" \
-e "aggregate.redis.port={your redis port}" \
-e "aggregate.redis.password={your redis password}" \
-e "aggregate.redis.database={your redis database}" \
fizzgate/fizz-gateway-community:{version}

或通过映射目录方式使用外部配置文件和输出日志到宿主机, 配置文件可从安装包或源码里获取,在宿主机创建fizz-gateway-community/config和fizz-gateway-community/logs目录,把application.yml和log4j2-spring.xml配置文件放置config下,在fizz-gateway-community目录下运行镜像

cd fizz-gateway-community
docker run --rm -d -p 8600:8600 \
-v $PWD/config:/opt/fizz-gateway-community/config \
-v $PWD/logs:/opt/fizz-gateway-community/logs fizzgate/fizz-gateway-community:{version}

最后访问网关,地址形式为:http://127.0.0.1:8600/proxy/[服务名]/[API_Path]

Ich denke du magst

Origin www.oschina.net/news/210237/fizz-gateway-2-7-0-released
Empfohlen
Rangfolge