Repolode
grpc-ecosystem

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-boot#java#microservices#rpc#spring-cloud#grpc-framework#grpc-java#spring#spring-boot-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 の数値は毎日更新されます。

関連プロジェクト