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
130
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
DuckDB いいよ / My Way of Using DuckDB
mackey0225
1
78
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
4
830
登壇をはじめよう / Getting Started with Presentations
mackey0225
2
360
ポケモンで考えるコミュニケーション / Communication Lessons from Pokémon
mackey0225
5
320
JEPs の変遷から眺める Vector API / Tracking the Progress of Vector API via JEPs
mackey0225
1
200
社内 LT 会を発足し、アウトプット文化を醸成させるために考えたこと・やったこと / Starting internal LT meetings and fostering an output culture
mackey0225
3
290
SRE チーム立ち上げ前に考えたこと・取り組んだこと / Considerations and Preparations Before Establishing an SRE Team
mackey0225
3
630
ふりかえりに外野として参加することでチームをモチベートしてみた / Motivated the team by participating as an outsider in the retrospectives
mackey0225
3
620
チームの成長を促すためのスプリントレトロスペクティブの活用法 / How to use sprint retrospectives to promote team growth
mackey0225
4
1.1k
Other Decks in Programming
See All in Programming
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
280
Оптимизируем производительность блока Казначейство
lamodatech
0
980
Alba: Why, How and What's So Interesting
okuramasafumi
0
240
ファインディの テックブログ爆誕までの軌跡
starfish719
1
670
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
230
AWS Lambda functions with C# 用の Dev Container Template を作ってみた件
mappie_kochi
0
210
HTML/CSS超絶浅い説明
yuki0329
0
200
最近のVS Codeで気になるニュース 2025/01
74th
1
230
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
140
Flatt Security XSS Challenge 解答・解説
flatt_security
0
800
自動で //nolint を挿入する取り組み / Gopher's Gathering
utgwkk
1
150
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
28
6.1k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
66
11k
BBQ
matthewcrist
85
9.4k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Producing Creativity
orderedlist
PRO
343
39k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Building Applications with DynamoDB
mza
93
6.2k
It's Worth the Effort
3n
184
28k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
3k
Six Lessons from altMBA
skipperchong
27
3.6k
Embracing the Ebb and Flow
colly
84
4.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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
ご静聴いただき ありがとうございました!