Spring FrameworkとSpring Bootを基盤とし、マイクロサービス環境でHTTPリクエストをルーティング、フィルタリングするAPIゲートウェイです。
grpc-ecosystem/grpc-spring
@GrpcServiceや@GrpcClientなどのアノテーションを使い、手動でチャネルやサーバーを設定せずにgRPCサーバーとクライアントを動かせるSpring Bootスターター。
- スター
- 3,709
- フォーク
- 853
- 未解決の Issue
- 172
- 最終コミット
- 3 日前
これは何?
grpc-springは、gRPC向けのSpring Bootスターターです。@GrpcServiceが付いたクラスからgRPCサーバーを自動で設定・起動し、@GrpcClientが付いたフィールド向けにgRPCチャネルとスタブを作成・管理します。サーバーとクライアントの設定は、grpc.serverおよびgrpc.clientプレフィックスを使い、Spring標準のプロパティ機構で行います。
grpc-javaをベースにしており、サーバー側ではBindableServiceベースのあらゆる実装で動作します。Reactive gRPCやgrpc-kotlinなど、別の方式をクライアント側で使うには、StubFactoryの独自実装が必要です。また、Spring Security、Spring Cloudのサービスディスカバリー(Consul、Eureka、Nacos)、Braveを介したSpring Sleuthのトレーシング、グローバルおよび独自のインターセプター、micrometer/actuatorのメトリクスとも連携します。
統合スターターに加え、サーバー用とクライアント用のスターターも個別に公開されています。また、Beanを手動で設定すれば、Spring Bootを使わずに利用することもできます。
主な機能
- 01@GrpcServiceを付けた実装からgRPCサーバーを自動で起動します。
- 02@GrpcClientを使ってgRPCチャネルとスタブを作成・管理します。
- 03Consul、Eureka、Nacosなどを使ったSpring Cloudのサービスディスカバリーと連携します。
- 04gRPCのサーバーおよびクライアントに対するグローバル/独自インターセプターをサポートします。
- 05micrometerとactuatorを通じてメトリクスを提供します。
ユースケース
- 既存のSpring BootアプリケーションにgRPCサービスを追加する。
- サービスディスカバリーで取得したアドレスを使い、Springベースのコードから他のgRPCマイクロサービスを呼び出す。
- Spring Securityやインターセプターを使って、gRPC呼び出しに認証やトレーシングを追加する。
収録されている特集
トピック
よくある質問
- grpc-spring とは?
- @GrpcServiceや@GrpcClientなどのアノテーションを使い、手動でチャネルやサーバーを設定せずにgRPCサーバーとクライアントを動かせるSpring Bootスターター。 grpc-springは、gRPC向けのSpring Bootスターターです。@GrpcServiceが付いたクラスからgRPCサーバーを自動で設定・起動し、@GrpcClientが付いたフィールド向けにgRPCチャネルとスタブを作成・管理します。サーバーとクライアントの設定は、grpc.serverおよびgrpc.clientプレフィックスを使い、Spring標準のプロパティ機構で行います。
- grpc-spring は無料で使えますか?ライセンスは?
- grpc-spring は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- grpc-spring は今もメンテナンスされていますか?
- 活発にメンテナンス中。grpc-spring の最終コミットは 2026年11月4日 です。
- grpc-spring は何に使えますか?
- 既存のSpring BootアプリケーションにgRPCサービスを追加する。 サービスディスカバリーで取得したアドレスを使い、Springベースのコードから他のgRPCマイクロサービスを呼び出す。 Spring Securityやインターセプターを使って、gRPC呼び出しに認証やトレーシングを追加する。
- grpc-spring はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/grpc-ecosystem/grpc-spring
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Spring CloudインターフェースのKubernetes実装により、Spring CloudアプリでKubernetesをサービスディスカバリーや設定に利用できます。
サービス通信、ディスカバリー、トラフィック管理を実現するRPC・マイクロサービスフレームワーク、Apache DubboのJava実装。
Spring CloudアプリケーションをTencentのPolarisと連携させ、サービスディスカバリーとガバナンスを実現するSpring Cloud実装です。
Actuatorエンドポイントを通じてSpring Bootアプリケーションを監視・管理するWebベースの管理ダッシュボード。
プラグインチェーンと中央管理用のAdminコンソールを備えた、サービスプロキシ、プロトコル変換、APIガバナンス向けのJava製APIゲートウェイ。