検索
ホームページJava&#&チュートリアルApache Dubbo リリース: Triple X がマイクロサービス通信の新時代をリード

Apache Dubbo のスター数は 40,000 を超えました。チームは誇りを持って Dubbo 3.3 の正式リリースを発表します。 Dubbo は、主要なオープンソース マイクロサービス フレームワークとして、分散サービス向けの高性能、スケーラブル、柔軟なソリューションを開発者に提供することに常に取り組んできました。 トリプル X アップグレードを特徴とする Dubbo 3.3 のリリースは、以前の制限を打ち破り、南北および東西両方のトラフィックの包括的なサポートを実現し、クラウドネイティブ アーキテクチャとの互換性を強化します。

ダボの紹介

Apache Dubbo は、当初 Java で開発された高性能で軽量のマイクロサービス フレームワークです。その後、Go、Rust、Python などの複数の言語をサポートするように拡張され、クロス言語、クロスプラットフォームの分散システムの構築に最適になりました。 Dubbo は、サービスの登録と検出、ロード バランシング、フォールト トレランス、コール チェーン トレースなどの豊富なサービス ガバナンス機能を提供し、開発者が効率的で柔軟なマイクロサービス アーキテクチャを構築するのに役立ちます。

Dubbo はその進化により、通信パフォーマンス、サービス ガバナンス、言語間の互換性が大幅に向上し、最新のマイクロサービス アーキテクチャをサポートする強力なツールになりました。

トリプル X アップグレードの背景

Dubbo は、初期のアプリケーションで、データセンター サービスの相互運用性において優れたパフォーマンスを実証しました。しかし、テクノロジーが進化し、アプリケーションのシナリオが拡大するにつれて、元のアーキテクチャにはボトルネックが現れ始めました。これらの制限は、クロスリージョンおよびクロスクラウド環境で特に顕著になり、Web フレームワークと RPC フレームワーク間の頻繁な切り替えが開発の複雑さの増大とシステム パフォーマンスの低下につながりました。

伝統的なアーキテクチャの問題点:

  1. データセンター アプリケーションに限定: クロスリージョンまたはクロスクラウド アプリケーションでは、Dubbo の従来のアーキテクチャには広域環境のネイティブ サポートが不足しており、開発者は複数のプロトコルとフレームワークを切り替える必要がありました。複雑さが増します。

  2. 南北および東西トラフィックに関する課題: Dubbo などの従来の RPC フレームワークは、多くの場合、サービス間 (東西) トラフィックの最適化に重点を置いています。しかし、効率的な南北通信 (クライアントからサーバーへ) の必要性が高まっており、新たな課題が生じています。

  3. クラウドネイティブおよびクロス言語の要件: クラウドネイティブ テクノロジの成長に伴い、システムは、従来の Dubbo ではサポートされていなかった HTTP プロトコルとクロス言語通信のサポートの強化を必要としています。最適化されました。

トリプル X の変革とブレークスルー: トリプル X アップグレードは、これらの問題点に直接対処します。 Dubbo の高性能通信機能を継承しながら、gRPC プロトコルとの完全な互換性を実現し、HTTP/1、HTTP/2、および HTTP/3 プロトコルをサポートします。これにより、クロスクラウドおよびクロスリージョンのアプリケーション シナリオの柔軟性と効率が向上します。

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

トリプル X コア機能の概要

  • 包括的なトラフィック サポート: トリプル X は、南北 (クライアントからサーバー) と東西 (サービスからサービス) の両方のトラフィックをサポートします。このシームレスなサポートにより、柔軟な変換が保証され、通信リンクの全体的な効率が向上します。

  • gRPC プロトコル標準への準拠: トリプル X は gRPC プロトコル標準に準拠し、Protobuf を介した通信を許可します。これにより、gRPC サービスとのシームレスな対話が可能になり、Dubbo のクロス言語、クロスプラットフォームの通信機能が拡張されます。

  • HTTP プロトコルに基づいて構築され、ネイティブのクラウドネイティブ サポート: トリプル X は HTTP/1、HTTP/2、および HTTP/3 に基づいて構築されており、ネットワーク パフォーマンスを最適化し、クラウドネイティブと統合します。さまざまなゲートウェイやサービス メッシュのサポートを含むインフラストラクチャ。

  • 高性能の最適化: トリプル X は、特に同時実行性が高く脆弱なネットワーク環境において、極端なパフォーマンスの強化を提供し、システムのスループットと応答速度を大幅に向上させます。

  • スムーズな移行とフレームワークの互換性: トリプル X を使用すると、開発者はコードを変更せずに既存の Spring Web プロジェクトを移行でき、Spring MVC などのフレームワークのサポートを維持しながらトリプル X へのシームレスな切り替えが可能になります。

  • 高い拡張性: 20 を超える新しい SPI 拡張ポイントを備えた Triple X により、ルーティング、パラメータ解析、シリアル化、例外処理などのコア動作のカスタマイズが可能になります。これにより柔軟性が向上し、開発者が特定のビジネス ニーズに合わせてフレームワークを適応できるようになります。

トリプル X の使用シナリオ

Dubbo 3.3 の

Triple X は、マイクロサービス アーキテクチャに柔軟な統合アプローチを提供し、さまざまなシステム要件に適応します。システム アーキテクチャに応じて、トリプル X は 集中型分散型 の両方の統合アプローチを提供し、さまざまなアプリケーション シナリオに適しています。

1. 一元的な統合

集中統合 アプローチでは、外部トラフィックは統合サービス ゲートウェイを介して Dubbo バックエンド サービスに入ります。ゲートウェイは、HTTP トラフィックの解析、転送、および適切なバックエンド サービスへのリクエストのルーティングを処理します。このアプローチは、統合トラフィック管理、フロー制御、権限検証に対する高い要件を持つシステムに適しており、受信トラフィックを一元的に制御できます。

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

  • 使用シナリオ: トラフィックの監視やレート制限など、外部リクエストの集中管理が必要なシステムの場合、トリプル X は HTTP/1、HTTP/2、および HTTP/3 トラフィックを効率的に処理できます。サービスゲートウェイを介してDubboサービスに転送します。

  • 利点: 集中制御、管理の容易さ、統合トラフィックガバナンスを必要とする大規模システムに適しています。

2. 分散型統合

分散型統合 アプローチでは、外部クライアントは中間ゲートウェイに依存せずに、HTTP 経由で Dubbo バックエンド サービスに直接アクセスできます。このアプローチは、ゲートウェイの必要性を排除することで通信オーバーヘッドを削減し、それによってシステムの応答速度を向上させるため、高性能かつ低遅延の要件を持つシステムに適しています。また、ゲートウェイ ノードを削除すると、ゲートウェイの障害によるシステムの利用不能が回避され、展開アーキテクチャが簡素化され、安定性が向上します。

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

  • 使用シナリオ: 中間ステップを減らし、応答速度を向上させるために、HTTP 経由で Dubbo サービスに直接アクセスする必要があるシステムの場合、トリプル X を使用すると、ゲートウェイなしで REST API を公開できます。

  • 利点: 中間ステップを排除し、パフォーマンスを向上させ、アーキテクチャを簡素化し、低遅延アプリケーションに適しています。

トリプル X 機能の詳細な内訳

1. 包括的なトラフィック管理と効率的なコミュニケーション

複雑なマイクロサービス アーキテクチャでは、南北 (クライアントからサーバー) と東西 (サービスからサービス) の両方のトラフィックを処理することが困難になる場合があります。 Triple X は、統合通信プロトコルを使用して両方をサポートするため、Web フレームワークと RPC フレームワークを切り替える必要がなくなり、開発プロセスが簡素化され、パフォーマンスと保守性が向上します。

開発者はトリプル X を利用して、ユーザーが開始したリクエストとサービス間通信の両方を効率的にサポートし、すべてトリプル X 経由でスムーズに送信できます。

package org.apache.test;

@DubboService
public class UserServiceImpl implements UserService {
   // Handles east-west requests
}

// Triple X also supports north-south traffic
@DubboService
public class OrderService {
   @GetMapping("/order/{orderId}")
   public Order getOrderById(@PathVariable("orderId") String orderId) {}
}

2. gRPCプロトコル標準への準拠

分散システムでは言語を越えたサービス間の通信が課題となることが多く、gRPC は一般的なソリューションです。トリプル X は gRPC プロトコル標準 に準拠しており、Protobuf を使用した gRPC とのシームレスな対話を可能にし、言語間およびプラットフォーム間の通信機能を強化します。

トリプル X を使用するサービスは、追加の調整を行わずに gRPC ベースのサービスと直接対話できるため、開発が簡素化されます。

3. HTTP プロトコルに基づいて構築され、ネイティブのクラウドネイティブ サポート

クラウドネイティブ環境では、サービスは、パフォーマンスを向上させるためにさまざまな HTTP プロトコルをサポートしながら、API ゲートウェイやサービス メッシュなどのさまざまなネットワーク設備と効果的に統合する必要があります。

トリプル X は HTTP/1、HTTP/2、および HTTP/3 をサポートしているため、開発者は追加の構成を行わずに、長時間接続、多重化、ヘッダー圧縮などのプロトコルの利点を活用できます。 HTTP/3 もヘッドオブライン ブロッキングの問題を解決し、その UDP ベースの通信は脆弱なネットワーク環境でも高品質とサービス パフォーマンスを維持します。

Triple X を使用すると、Spring Boot の既存の Servlet ポートを再利用して HTTP トラフィックを処理できるため、別の Netty リスニング ポートが不要になります。これにより、ネットワーク アーキテクチャが簡素化され、メンテナンス コストが削減され、セキュリティが向上し、トラフィックが企業のファイアウォールやゲートウェイをより簡単に通過できるようになります。

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

4. 高性能の最適化、5 倍の QPS 向上

同時実行性の高いシナリオでは、従来の通信プロトコルがボトルネックとなり、システムの応答時間とスループットに影響を与えることがよくあります。

トリプル X は、Radix TreeZero Copy などのテクノロジーを使用して CPU 使用率とメモリ消費量を削減し、特に同時実行性が高く脆弱なネットワーク環境でのシステム パフォーマンスを大幅に向上させます。

  • 効率的なルーティング: ルート マッチングに基数ツリーを使用し、キー ハッシュ アルゴリズムを最適化し、動的更新をサポートします。これにより、メモリ使用量が削減され、マッチング効率が向上します。

  • メモリ使用量の最適化: ゼロ コピーとオブジェクトの再利用を組み合わせて、データ コピーとオブジェクト作成のオーバーヘッドを削減します。これにより、ガベージ コレクションの圧力が低下し、スループットが向上します。

  • HTTP/3 サポート: QUIC ベースの HTTP/3 プロトコルを利用し、遅延を削減し、接続の信頼性を高めることで、弱いネットワーク条件でのパフォーマンスを向上させます。

  • マルチプロトコルのストレス テストと最適化: Dubbo チームは、複数のプロトコルで広範なストレス テストを実施し、数回の最適化を実行して、さまざまなシナリオにわたって最適なパフォーマンスを確保しました。

パフォーマンス テストによると、従来の Spring Boot REST サービスと比較して、トリプル X を使用したシンプルな REST サービスは、高圧下で 5 倍の QPS を達成し、応答時間を 3 分の 1 に短縮し、メモリ割り当てを50% となり、システムのパフォーマンスとリソース効率が大幅に向上します。

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

Apache Dubbo  Released: Triple X Leads a New Era of Microservices Communication

5. スムーズな移行とフレームワークの互換性

トリプル X は、コードを大幅に変更することなく、既存の Spring Web プロジェクトのマイクロサービス アーキテクチャへの移行もサポートします。

Triple X は、非侵入型移行ソリューションを提供します。これにより、開発者は、Spring MVC などのフレームワークをサポートしながら、既存のコードを変更することなく、既存の Spring Web プロジェクトを Triple X に移行できます。

package org.apache.test;

@DubboService
public class UserServiceImpl implements UserService {
   // Handles east-west requests
}

// Triple X also supports north-south traffic
@DubboService
public class OrderService {
   @GetMapping("/order/{orderId}")
   public Order getOrderById(@PathVariable("orderId") String orderId) {}
}

このリリースのその他の機能強化の概要

1. ネイティブ イメージ AOT のサポート

Dubbo 3.3 では、ネイティブ イメージ AOT (Ahead-of-Time Compilation) のサポートが導入され、開発者は Dubbo アプリケーションをネイティブ バイナリにコンパイルできるようになります。これにより、起動時間とメモリ使用量が大幅に削減され、サーバーレス シナリオに最適です。

2. プロジェクトルームのサポート

Dubbo 3.3 は、Project Loom のサポートを追加し、仮想スレッドを使用した同時実行性の高いシナリオでのスレッド管理を最適化し、非同期プログラミング モデルを簡素化し、同時実行処理を改善します。

3. 新しいルーティング ルール

Dubbo 3.3 では、新しいルーティング ルールも導入され、より柔軟なトラフィック制御とサービス ガバナンスをサポートし、大規模なマイクロサービス展開への適応性が強化されています。

結論

Apache Dubbo 3.3 のリリースは、マイクロサービス通信テクノロジにおける重要なマイルストーンをマークします。 Triple X により、Dubbo は南北と東西の両方のトラフィックの包括的なサポート、gRPC とのシームレスな統合、HTTP プロトコルを介したクラウドネイティブ サポート、および大幅なパフォーマンスの最適化を提供し、開発者に強力で強力な機能を提供します。最新の分散システムを構築するための柔軟なツール。

サービス間通信の効率を強化する必要がある場合でも、言語間の互換性を達成する必要がある場合でも、クラウドネイティブの通信パフォーマンスを最適化する必要がある場合でも、Dubbo 3.3 は、最新の分散システムの課題に取り組むための理想的な選択肢です。 。今すぐ Dubbo 3.3 にアップグレードして、マイクロサービス通信の新時代の到来を告げる トリプル X によってもたらされる変革を体験してください!

以上がApache Dubbo リリース: Triple X がマイクロサービス通信の新時代をリードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
JVMは、Javaの「Write and、Run Anywhere」(Wora)機能にどのように貢献しますか?JVMは、Javaの「Write and、Run Anywhere」(Wora)機能にどのように貢献しますか?May 02, 2025 am 12:25 AM

JVMは、バイトコード解釈、プラットフォームに依存しないAPI、動的クラスの負荷を介してJavaのWORA機能を実装します。 2。標準API抽象オペレーティングシステムの違い。 3.クラスは、実行時に動的にロードされ、一貫性を確保します。

Javaの新しいバージョンは、プラットフォーム固有の問題にどのように対処しますか?Javaの新しいバージョンは、プラットフォーム固有の問題にどのように対処しますか?May 02, 2025 am 12:18 AM

Javaの最新バージョンは、JVMの最適化、標準的なライブラリの改善、サードパーティライブラリサポートを通じて、プラットフォーム固有の問題を効果的に解決します。 1)Java11のZGCなどのJVM最適化により、ガベージコレクションのパフォーマンスが向上します。 2)Java9のモジュールシステムなどの標準的なライブラリの改善は、プラットフォーム関連の問題を削減します。 3)サードパーティライブラリは、OpenCVなどのプラットフォーム最適化バージョンを提供します。

JVMによって実行されたバイトコード検証のプロセスを説明します。JVMによって実行されたバイトコード検証のプロセスを説明します。May 02, 2025 am 12:18 AM

JVMのバイトコード検証プロセスには、4つの重要な手順が含まれます。1)クラスファイル形式が仕様に準拠しているかどうかを確認し、2)バイトコード命令の有効性と正確性を確認し、3)データフロー分析を実行してタイプの安全性を確保し、検証の完全性とパフォーマンスのバランスをとる。これらの手順を通じて、JVMは、安全で正しいバイトコードのみが実行されることを保証し、それによりプログラムの完全性とセキュリティを保護します。

プラットフォームの独立性は、Javaアプリケーションの展開をどのように簡素化しますか?プラットフォームの独立性は、Javaアプリケーションの展開をどのように簡素化しますか?May 02, 2025 am 12:15 AM

java'splatformendencealLowsApplicationStorunOperatingSystemwithajvm.1)singlecodebase:writeandcompileonceforallplatforms.2)easyUpdates:updatebytecodeforsimultaneousdeployment.3)テストの実験効果:scalbortffortfforduniverbehaviol.4)

Javaのプラットフォームの独立性は、時間とともにどのように進化しましたか?Javaのプラットフォームの独立性は、時間とともにどのように進化しましたか?May 02, 2025 am 12:12 AM

Javaのプラットフォームの独立性は、JVM、JITコンピレーション、標準化、ジェネリック、ラムダ式、Projectpanamaなどのテクノロジーを通じて継続的に強化されています。 1990年代以来、Javaは基本的なJVMから高性能モダンJVMに進化し、さまざまなプラットフォームでのコードの一貫性と効率を確保しています。

Javaアプリケーションでプラットフォーム固有の問題を緩和するためのいくつかの戦略は何ですか?Javaアプリケーションでプラットフォーム固有の問題を緩和するためのいくつかの戦略は何ですか?May 01, 2025 am 12:20 AM

Javaはプラットフォーム固有の問題をどのように軽減しますか? Javaは、JVMおよび標準ライブラリを通じてプラットフォームに依存します。 1)bytecodeとjvmを使用して、オペレーティングシステムの違いを抽象化します。 2)標準のライブラリは、パスクラス処理ファイルパス、CHARSETクラス処理文字エンコードなど、クロスプラットフォームAPIを提供します。 3)最適化とデバッグのために、実際のプロジェクトで構成ファイルとマルチプラットフォームテストを使用します。

Javaのプラットフォームの独立性とマイクロサービスアーキテクチャの関係は何ですか?Javaのプラットフォームの独立性とマイクロサービスアーキテクチャの関係は何ですか?May 01, 2025 am 12:16 AM

java'splatformentencentenhancesmicroservicesecturectureby byofferingdeploymentflexability、一貫性、スケーラビリティ、およびポート可能性。1)展開の展開の展開は、AllosmicRoserviThajvm.2)deploymentflexibility lowsmicroserviceSjvm.2)一貫性のあるAcrossServicessimplisimpligiessdevelisementand

GraalvmはJavaのプラットフォーム独立目標とどのように関係していますか?GraalvmはJavaのプラットフォーム独立目標とどのように関係していますか?May 01, 2025 am 12:14 AM

Graalvmは、Javaのプラットフォームの独立性を3つの方法で強化します。1。言語間の相互運用性、Javaが他の言語とシームレスに相互運用できるようにします。 2。独立したランタイム環境、graalvmnativeimageを介してJavaプログラムをローカル実行可能ファイルにコンパイルします。 3.パフォーマンスの最適化、Graalコンパイラは、Javaプログラムのパフォーマンスと一貫性を改善するための効率的なマシンコードを生成します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境