Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Spring gRPC について / About Spring gRPC
Search
mackey0225
January 30, 2025
Programming
0
940
Spring gRPC について / About Spring gRPC
2025-01-30 に開催された 関ジャバ'25 1月度 で LT した資料です。
https://kanjava.connpass.com/event/342465/
mackey0225
January 30, 2025
Tweet
Share
More Decks by mackey0225
See All by mackey0225
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
コーディングは技術者(エンジニア)の嗜みでして / Learning the System Development Mindset from Rock Lady
mackey0225
2
680
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
680
JFR in Minecraft
mackey0225
1
42
こどもとじぶんの関係性と自分なりの戦略 / My personal parenting strategies as an IT engineer
mackey0225
1
110
DuckDB いいよ / My Way of Using DuckDB
mackey0225
1
160
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
5
1.5k
登壇をはじめよう / Getting Started with Presentations
mackey0225
3
480
ポケモンで考えるコミュニケーション / Communication Lessons from Pokémon
mackey0225
5
490
Other Decks in Programming
See All in Programming
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
160
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
150
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
740
Kiroの仕様駆動開発から見えてきたAIコーディングとの正しい付き合い方
clshinji
1
210
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
120
Rancher と Terraform
fufuhu
2
280
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
430
私の後悔をAWS DMSで解決した話
hiramax
4
210
時間軸から考えるTerraformを使う理由と留意点
fufuhu
16
4.7k
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
270
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
OSS開発者という働き方
andpad
5
1.7k
Featured
See All Featured
Balancing Empowerment & Direction
lara
3
620
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
How to Ace a Technical Interview
jacobian
279
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
The Cult of Friendly URLs
andyhume
79
6.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
112
20k
GraphQLとの向き合い方2022年版
quramy
49
14k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Transcript
Spring gRPC について 2025-01-30 関ジャバ'25 1月度 BABY JOB株式会社 浅野 正貴
(@mackey0225)
Spring gRPC について 自己紹介 名前:浅野 正貴 所属:BABY JOB株式会社 最近はインフラや SRE がメイン
X: @mackey0225 明けましておめでとうございます
Spring gRPC について 先に諸注意 • gRPC そのもの説明はしません(というか、できません) • 雰囲気重視です ◦
正確性や実際にどうなんは各自でお願いします ◦ 間違ってたら「おくすり飲めたね」に包んで伝えて ◦ LT(5 分)だと限界がある • 後半でコードが出ますが、字が小さいです ◦ 資料は公開しますので、後でじっくり見てください
それはそうと、
今年から 関ジャバのスタッフに なりました!
今年から 関ジャバのスタッフに なりました! とはいえ、ゴールではなくスタート なにとぞよろしくおねがいしますー
てなわけで、本題!
Spring gRPC について Spring gRPC とは(1) • Spring プロジェクトのひとつ ◦
ただし、Experimental Project • 公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT
Spring gRPC について Spring gRPC とは(1) • Spring プロジェクトのひとつ ◦
ただし、Experimental Project • 公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT https://github.com/spring-projects-experimental
Spring gRPC について • Spring プロジェクトのひとつ ◦ ただし、Experimental Project •
公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT Spring gRPC とは(1) https://github.com/spring-projects-experimental/spring-grpc/activity
Spring gRPC について • Spring プロジェクトのひとつ ◦ ただし、Experimental Project •
公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT Spring gRPC とは(1) https://mvnrepository.com/artifact/org.springframework.grpc/spring-grpc
Spring gRPC について • Spring プロジェクトのひとつ ◦ ただし、Experimental Project •
公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT Spring gRPC とは(1) https://github.com/spring-projects-experimental/spring-grpc/tags
Spring gRPC について • Spring プロジェクトのひとつ ◦ ただし、Experimental Project •
公開は 2024 年 9 月 • 現在最新は 0.3.0 ◦ GitHub のタグは 0.2.0 ◦ ドキュメントは 0.4.0-SNAPSHOT Spring gRPC とは(1) https://docs.spring.io/spring-grpc/reference/
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/ 手順はシンプルで、proto フォルダに
gRPC のサービ ス定義を記述するだけです。
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/ まず start.spring.io
にアクセスし、gRPC を選択して プロジェクトを生成します。 その後、選択したビルドツールでプロジェクトをビル ドすると、自動的にサービスのスタブが生成されま す。
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/ まず start.spring.io
にアクセスし、gRPC を選択して プロジェクトを生成します。 その後、選択したビルドツールでプロジェクトをビル ドすると、自動的にサービスのスタブが生成されま す。
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 まず start.spring.io にアクセスし、gRPC
を選択して プロジェクトを生成します。 その後、選択したビルドツールでプロジェクトをビル ドすると、自動的にサービスのスタブが生成されま す。 https://start.spring.io/
Spring gRPC について Spring gRPC とは(2) 先週、こんな記事が、、、 まず start.spring.io にアクセスし、gRPC
を選択して プロジェクトを生成します。 その後、選択したビルドツールでプロジェクトをビル ドすると、自動的にサービスのスタブが生成されま す。 https://start.spring.io/ というわけで、やってみた!
Spring gRPC について お試し Spring gRPC
Spring gRPC について お試し Spring gRPC
Spring gRPC について お試し Spring gRPC プロジェクト作成時点で proto ディレクトリが作成されている。 (併せて、依存関係も追加済み)
Spring gRPC について お試し Spring gRPC コード参考: https://github.com/spring-projects-experimental/spring-grpc/blob/main/samples/grpc-server/src/ main/proto/hello.proto proto
ディレクトリ内に .proto ファイルを追加。
Spring gRPC について お試し Spring gRPC ビルドすると左のコードが作成。 (Gradle だと build
ディレクトリ)
Spring gRPC について お試し Spring gRPC コード参考: https://github.com/spring-projects-experimental/spring-grpc/blob/main/samples/grpc-server/src/ main/java/org/springframework/grpc/sample/GrpcServerService.java 生成されたコードに対して、処理を
定義していく。
Spring gRPC について お試し Spring gRPC いつも通り、Spring Boot を起動。
Spring gRPC について お試し Spring gRPC .proto で定義したエンドポイントを叩くと結果が返る。 (「\u003e」は「>」がエスケープされている)
Spring gRPC について お試し Spring gRPC .proto で定義したエンドポイントを叩くと結果が返る。 (「\u003e」は「>」がエスケープされている) できた!簡単!
Spring gRPC について まとめのようなもの • Spring Boot 上での gRPC 通信を簡単に導入・実現できる
• まだ Experimental なので、仕様は変わるかも ◦ 実戦投入はまだ厳しいかな(不安) • 公式のブログでも以下の内容もあるので期待は高い ◦ GraalVM での実行 ◦ Spring Security との連携 など
Spring gRPC について 参考情報 • Spring gRPC Reference ◦ https://docs.spring.io/spring-grpc/reference/index.html
• GitHub の Project ◦ https://github.com/spring-projects-experimental/spring-grpc • This Month in Spring – January 2025 ◦ https://blogs.vmware.com/tanzu/this-month-in-spring-january-2025/ • 例で使用したサンプルコード ◦ https://github.com/spring-projects-experimental/spring-grpc/tree/m ain/samples/grpc-server
ご静聴いただき ありがとうございました!