Apache ShenYu(incubating)は、非同期の高性能クロスランゲージリアクティブAPIゲートウェイである2.4.3をリリースしました

Apache ShenYu(インキュベーション)2.4.3

Liu Yi、Xiao Yu、Apache ShenYu

リリースマネージャー

/ Apache ShenYu PPMC

3か月後、Apache ShenYuはバージョン2.4.3を再びリリースしました。このバージョンのコンテンツには、200以上のプルリクエストがあり、30以上の貢献者が参加し、多くの新機能が追加され、多くのバグが修正され、多くの最適化が行われました。コンテンツの

Vol.1  新機能

  • Http登録済みクライアントの再試行メカニズムが追加されました。
  • サポートされているContent-Typeはoctet-streamです。
  • BootstrapのURIのリダイレクトをサポートします。
  • ローカルAPI認証を追加しました。
  • Dubboコンシューマスレッドプールのサイズの構成をサポートします。
  • Divideプラグインの失敗再試行メカニズムをサポートします。
  • Webscoketのクライアント構成がサポートされています。
  • 六MemoryLimitedLinkedBlockingQueue。
  • AlibabaDubboプラグイン共有スレッドプールをサポートします。
  • gRPCプラグイン共有スレッドプールをサポートします。
  • メトリックプラグインを追加しました。
  • キャッシュプラグインを追加します。
  • LoggingRocketMQプラグインを追加しました。

Vol.2最適化項目

  • JUnit4をJUnit5に更新します。
  • パスワードの暗号化を最適化します。
  • shenyu-adminモジュールのインターフェースパラメータを最適化して検証します。
  • 同期データを最適化する場合、データを初期化するコード。
  • LoggingRocketMQプラグインの統合テストを追加しました。
  • ScheduledExecutorServiceクラスでスケジュールされたラウンドアルゴリズムを使用します。
  • adminに登録されたURIのbuildHandleメソッドをリファクタリングします。
  • 自動的にポートを設定するようにSpringCloudクライアントを最適化しました。
  • マルチレベルトークンをサポートするようにJWTプラグインをリファクタリングしました。
  • 最適化されたゲートウェイnettyパラメーターのカスタマイズと構成可能

Vol.3バグ修正

  • CommonUpstreamUtilsクラスの初期化でのnullポインタ例外を修正しました。
  • Nacos登録が失敗した場合の判断を修正しました。
  • 未登録ユーザーにログインするときのnullポインター例外を修正しました。
  • 起動ログを繰り返し印刷する問題を修正します。
  • 再試行回数とタイムアウト期間が有効にならない問題を修正しました。
  • トークン解析エラーの問題を修正します。
  • Websocketが大きなデータを異常に送信する問題を修正します。
  • NettyHttpClientプラグインが失敗時に再試行しない問題を修正しました。
  • CVE-2021-41303の脆弱性を修正しました。
  • すべてのプラグイン包含条件の判断が有効にならない問題を修正しました。
  • Httpヘッダーがデータを失う問題を修正します。
  • URLプレースホルダーをサポートしていないRewriteプラグインを修正しました。
  • Nacosの異常な同期データの問題を修正します。
  • ContextPathプラグインが開いているときのWebsocketプロキシの失敗またはnullポインター例外を修正しました。
  • Httpに登録されたクライアントのポート占有チェックを修正しました。

Vol.4  削除されたアイテム

  • Monitorプラグインを削除します。
  • shenyu-agentモジュールを削除します。

Vol.5メトリクスプラグインの説明

メトリックプラグインは、ゲートウェイが自身の実行ステータス(JVM関連)を監視し、応答遅延、QPS、TPS、およびその他の関連メトリックを要求するために使用されます。

 

プラグインの使用

  • ゲートウェイのpom.xmlファイルにメトリックの依存関係を追加します。

<dependency>    <groupId>org.apache.shenyugroupId>    <artifactId>shenyu-spring-boot-starter-plugin-metricsartifactId>    <version>${project.version}version><dependency>
  • ゲートウェイの構成yamlファイルで以下を編集します

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

特定のメトリクス情報については、公式Webサイトの説明を確認してください:https://shenyu.apache.org/zh/docs/plugin-center/observability/metrics-plugin

Vol.5キャッシュプラグインの説明

キャッシュプラグインは、ターゲットサービスの結果をキャッシュでき、ユーザーがキャッシュされた結果の有効期限を構成できるようにします

                                                                                                           プラグインの使用

  • ゲートウェイのpom.xmlファイルにキャッシュの依存関係を追加します。

<dependency> 
    <groupId> org.apache.shenyu </ groupId> 
    <artifactId> shenyu-spring-boot-starter-plugin-cache </ ArtifactId> 
    <version> $ {project.version} </ version></dependency>
  • データが頻繁に更新されず、多数の呼び出しが必要なシナリオ。

  • 高いデータ整合性を必要としないシナリオの場合。

Vol.5LogingRocketMQプラグインの説明

Apache ShenYuゲートウェイは、クライアントリクエストを受信し、そのリクエストをサーバーに転送して、サーバーの結果をクライアントに返します。ゲートウェイは、各リクエストに対応する詳細情報を記録できます。  

次のようにリストされます:要求時間、要求パラメーター、要求パス、応答結果、応答ステータスコード、時間のかかる、アップストリームIP、待機中の例外情報。  

Logging-RocketMQプラグインは、アクセスログを記録し、アクセスログをRocketMQクラスターに送信するプラグインです。

 

プラグインの使用

ゲートウェイのpom.xmlファイルに依存関係を追加します。

<dependency> 
    <groupId> org.apache.shenyu </ groupId> 
    <artifactId> shenyu-spring-boot-starter-plugin-logging-rocketmq </ ArtifactId> 
    <version> $ {project.version} </ version></dependency>

 各パラメーターの特定の構成と機能は、公式Webサイトで確認できます:https://shenyu.apache.org/zh/docs/plugin-center/observability/logging-rocketmq

 

次のバージョンの計画

 

特徴

クラスタープランを追加する

ShenYuのクラスターモードとゲートウェイの動的な拡張および縮小をサポートするためにshenyu-proxyモジュールが追加されました

Nginxアップストリームモジュールに接続するためのshenyu-nginxサブプロジェクトを追加しました

多言語SDKを追加

多言語SDKは、主に他のタイプの言語がshenyuゲートウェイにすばやくアクセスできるようにするためのものです

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

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

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

Helmのサポートが追加されました

                                 

 

参加しませんか

  Apache ShenYuは、マルチプロトコル、プラグイン、高性能APIゲートウェイであり、2021年5月にApacheインキュベーターに参加します。

貢献する方法

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

                            

 

おすすめ

転載: www.oschina.net/news/191869