Apache ShenYu(incubating) hat Version 2.4.3 veröffentlicht, ein asynchrones, sprachübergreifendes, reaktives API-Gateway mit hoher Leistung

Apache ShenYu (Inkubation) 2.4.3

Liu Yi, Xiao Yu, Apache ShenYu

Release-Manager

/ Apache ShenYu PPMC

Nach 3 Monaten hat Apache ShenYu erneut Version 2.4.3 veröffentlicht. Der Inhalt dieser Version hat mehr als 200 Pull-Requests, mehr als 30 Mitwirkende haben teilgenommen, viele neue Funktionen wurden hinzugefügt, viele Fehler wurden behoben und viele Optimierungen wurden vorgenommen. viele von Inhalten

Vol .1  Neue Funktionen

  • Wiederholungsmechanismus für Http-registrierten Client hinzugefügt.
  • Der unterstützte Inhaltstyp ist Octet-Stream.
  • Unterstützt die Umleitung von Bootstrap-URIs.
  • Lokale API-Autorisierung hinzugefügt.
  • Unterstützt die Konfiguration der Größe des Dubbo-Consumer-Thread-Pools.
  • Unterstützung des Fehlerwiederholungsmechanismus für das Divide-Plug-in.
  • Client-Konfiguration für Webscoket wird unterstützt.
  • Siehe auch MemoryLimitedLinkedBlockingQueue.
  • Unterstützt den gemeinsam genutzten Thread-Pool des Alibaba Dubbo-Plug-ins.
  • Unterstützt den gemeinsam genutzten Thread-Pool des gRPC-Plug-ins.
  • Metrics-Plugin hinzugefügt.
  • Cache-Plugin hinzufügen.
  • Logging RocketMQ-Plugin hinzugefügt.

Vol.2 Optimierungselemente

  • Aktualisieren Sie JUnit4 auf JUnit5.
  • Passwortverschlüsselung optimieren.
  • Optimieren und überprüfen Sie die Schnittstellenparameter des shenyu-admin-Moduls.
  • Beim Optimieren der Synchronisierung von Daten Code, der Daten initialisiert.
  • Integrationstests für das LoggingRocketMQ-Plugin hinzugefügt.
  • Verwenden Sie den geplanten Rundenalgorithmus in der ScheduledExecutorService-Klasse.
  • Refactoring der buildHandle-Methode des registrierten URI in admin.
  • Der Spring Cloud-Client wurde optimiert, um den Port automatisch festzulegen.
  • Überarbeitetes JWT-Plug-in zur Unterstützung von Multi-Level-Token.
  • Optimierte Gateway-Netty-Parameteranpassung und konfigurierbar

Vol.3 Fehler beheben

  • Nullzeiger-Ausnahme bei der Initialisierung der CommonUpstreamUtils-Klasse behoben.
  • Beurteilung behoben, wenn die Nacos-Registrierung fehlschlägt.
  • Nullzeiger-Ausnahme beim Anmelden eines nicht registrierten Benutzers behoben.
  • Beheben Sie das Problem des wiederholten Druckens des Startprotokolls.
  • Das Problem wurde behoben, dass die Anzahl der Wiederholungen und die Timeout-Periode nicht wirksam wurden.
  • Beheben Sie das Problem des Token-Parsing-Fehlers.
  • Beheben Sie das Problem, dass Websocket große Daten abnormal überträgt.
  • Behoben, dass das NettyHttpClient-Plug-in bei einem Fehler keine Wiederholung versucht.
  • Schwachstelle CVE-2021-41303 behoben.
  • Es wurde ein Problem behoben, bei dem die Beurteilung aller Plugin-Einschlussbedingungen nicht wirksam wurde.
  • Beheben Sie das Problem, dass HTTP-Header Daten verlieren.
  • Behebung des Rewrite-Plugins, das keine URL-Platzhalter unterstützt.
  • Beheben Sie das Problem von anormalen Synchronisationsdaten in Nacos.
  • Behebung eines Websocket-Proxy-Fehlers oder einer Nullzeiger-Ausnahme, wenn das ContextPath-Plug-in geöffnet ist.
  • Die Überprüfung der Portbelegung für Http-registrierte Clients wurde korrigiert.

Band 4  Entfernte Elemente

  • Entfernen Sie das Monitor-Plugin.
  • Entfernen Sie das Shenyu-Agent-Modul.

Vol.5 Metrics Plugin Anleitung

Das Metrics -Plug-in wird vom Gateway verwendet, um seinen eigenen Betriebsstatus (JVM-bezogen), die Verzögerung der Antwort auf Anfragen, QPS, TPS und andere zugehörige Metriken zu überwachen.

 

Verwendung von Plugins

  • Fügen Sie die Metrikabhängigkeit in der pom.xml-Datei des Gateways hinzu.

<dependency>    <groupId>org.apache.shenyugroupId>    <artifactId>shenyu-spring-boot-starter-plugin-metricsartifactId>    <version>${project.version}version><dependency>
  • Bearbeiten Sie Folgendes in der YAML-Konfigurationsdatei des Gateways

shenyu:  metrics:    enabled: false  #设置为 true 表示开启    name : prometheus     host: 127.0.0.1 #暴露的ip    port: 8090 #暴露的端口    jmxConfig: #jmx配置    props:      jvm_enabled: true #开启jvm的监控指标

Informationen zu spezifischen Metriken finden Sie in der offiziellen Website-Beschreibung: https://shenyu.apache.org/zh/docs/plugin-center/observability/metrics-plugin

Vol.5 Cache -Plug-in-Anweisungen

Das Cache-Plug-In kann die Ergebnisse des Zieldienstes zwischenspeichern und ermöglicht dem Benutzer auch, die Ablaufzeit der zwischengespeicherten Ergebnisse zu konfigurieren

                                                                                                           Verwendung von Plugins

  • Cache-Abhängigkeit in der pom.xml-Datei des Gateways hinzugefügt.

<Abhängigkeit>
    <groupId>org.apache.shenyu</groupId>
    <artifactId>shenyu-spring-boot-starter-plugin-cache</artifactId>
    <Version>${Projekt.Version}</Version></dependency>
  • Szenarien, in denen Daten nicht häufig aktualisiert werden und eine große Anzahl von Aufrufen erfordern.

  • Für Szenarien, die keine hohe Datenkonsistenz erfordern.

Vol.5 Logging RocketMQ Plugin-Anweisungen

Das Apache ShenYu- Gateway empfängt die Client-Anfrage, leitet die Anfrage an den Server weiter und gibt das Serverergebnis an den Client zurück. Das Gateway kann die detaillierten Informationen zu jeder Anfrage aufzeichnen.  

Aufgeführt als: Anforderungszeit, Anforderungsparameter, Anforderungspfad, Antwortergebnis, Antwortstatuscode, zeitaufwändig, Upstream-IP, Ausnahmeinformationen warten.  

Das Plug-in Logging-RocketMQ ist ein Plug-in, das Zugriffsprotokolle aufzeichnet und Zugriffsprotokolle an den RocketMQ-Cluster sendet.

 

Verwendung von Plugins

Fügen Sie Abhängigkeiten in der pom.xml-Datei des Gateways hinzu.

<Abhängigkeit>
    <groupId>org.apache.shenyu</groupId>
    <artifactId>shenyu-spring-boot-starter-plugin-logging-rocketmq</artifactId>
    <Version>${Projekt.Version}</Version></dependency>

 Die spezifische Konfiguration und die Funktion jedes Parameters finden Sie auf der offiziellen Website: https://shenyu.apache.org/zh/docs/plugin-center/observability/logging-rocketmq

 

Planung für die nächste Version

 

Merkmale

Fügen Sie einen Clusterplan hinzu

Shenyu-Proxy-Modul hinzugefügt, um den Cluster-Modus von ShenYu und die dynamische Erweiterung und Kontraktion von Gateways zu unterstützen

Shenyu-nginx-Unterprojekt hinzugefügt, um eine Verbindung zum Nginx-Upstream-Modul herzustellen

Mehrsprachiges SDK hinzugefügt

Das mehrsprachige SDK dient hauptsächlich dazu, anderen Arten von Sprachen den schnellen Zugriff auf das Shenyu-Gateway zu ermöglichen

https://github.com/apache/incubator-shenyu-client-donet

https://github.com/apache/incubator-shenyu-client-golang

https://github.com/apache/incubator-shenyu-client-python

Unterstützung für Helm hinzugefügt

                                 

 

begleiten Sie uns

  Apache ShenYu ist ein Plug-in-Hochleistungs-API-Gateway mit mehreren Protokollen, das im Mai 2021 in den Apache-Inkubator aufgenommen wird

Wie kann ich beitragen?

https://shenyu.apache.org/zh/community/contributor-guide

                            

 

Supongo que te gusta

Origin www.oschina.net/news/191869
Recomendado
Clasificación