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
840
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
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
620
JFR in Minecraft
mackey0225
1
36
こどもとじぶんの関係性と自分なりの戦略 / My personal parenting strategies as an IT engineer
mackey0225
1
110
DuckDB いいよ / My Way of Using DuckDB
mackey0225
1
140
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
5
1.5k
登壇をはじめよう / Getting Started with Presentations
mackey0225
3
470
ポケモンで考えるコミュニケーション / Communication Lessons from Pokémon
mackey0225
5
460
JEPs の変遷から眺める Vector API / Tracking the Progress of Vector API via JEPs
mackey0225
1
250
社内 LT 会を発足し、アウトプット文化を醸成させるために考えたこと・やったこと / Starting internal LT meetings and fostering an output culture
mackey0225
3
390
Other Decks in Programming
See All in Programming
iOS開発スターターキットの作り方
akidon0000
0
220
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
3
2k
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
350
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
180
GPUを計算資源として使おう!
primenumber
1
300
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
570
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
170
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
190
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
24
10k
Workers を定期実行する方法は一つじゃない
rokuosan
0
130
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
230
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
680
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
760
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
720
Art, The Web, and Tiny UX
lynnandtonic
301
21k
4 Signs Your Business is Dying
shpigford
184
22k
How STYLIGHT went responsive
nonsquared
100
5.7k
How to train your dragon (web standard)
notwaldorf
96
6.1k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Music & Morning Musume
bryan
46
6.7k
Into the Great Unknown - MozCon
thekraken
40
1.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
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
ご静聴いただき ありがとうございました!