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
gRPCの概要について理解できるスライド
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hiromu Takahashi
April 04, 2024
0
48
gRPCの概要について理解できるスライド
以前登壇したLTで使用したスライド
Hiromu Takahashi
April 04, 2024
Tweet
Share
More Decks by Hiromu Takahashi
See All by Hiromu Takahashi
Spring Bootでの定数の扱い
tk_hirom
0
240
触って理解するElasticsearch 1
tk_hirom
0
30
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
780
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
From π to Pie charts
rasagy
0
160
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
700
Odyssey Design
rkendrick25
PRO
2
560
Music & Morning Musume
bryan
47
7.1k
Designing Experiences People Love
moore
143
24k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
460
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.1k
For a Future-Friendly Web
brad_frost
183
10k
Mind Mapping
helmedeiros
PRO
1
130
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Transcript
gRPC超入門(1/n)
目的 実務で使用する際に、困らない程度の理解 何回かに分けて発表を行う
gRPCとは • Googleが作成した新しい通信プロトコル • 高速通信が得意(REST APIの7~10倍) ◦ HTTPプロトコルがHTTP2 ◦ バイト列でデータをやり取り
• やり取りするデータ型をファイルに定義しておける • 同時に多くのリクエストを捌ける(ストリーミング通信)
gRPCの使い方 1. gRPC利用に必要なライブラリをインストール 2. Protocol Buffersの定義ファイル(protoファイル)を作成 3. ファイルからコード(インターフェイス)を生成 4. そのインターフェイスを用いてControllerを作成
Protocol Buffersとは protoファイルに定義してあるデータ型のデータを、シリアライズしてバイト列にしてくれる もの
デメリット 実装に時間がかかる REST APIと異なりまだ浸透していない。そのため、サードパーティのフレームワークに gRPCを用いた開発のサポート機能が充実していない
gRPCの利用シーン • マイクロサービス ◦ 素早い通信速度が求められるから • 多(プログラミング)言語システム ◦ 様々な言語のコード生成サポートがあるため •
リアルタイムのストリーミング ◦ HTTP2を採用しているため双方向ストリーミングが可能 • 低電力低帯域ネットワーク ◦ やり取りするデータがバイト文字列だから
次回以降の予定 • 実際に動くものを作成しそれを示しつつ基本的な使用方法を共有 • 実務での採用理由
参考文献 https://learn.microsoft.com/ja-jp/dotnet/architecture/grpc-for-wcf-developers/why-gr pc https://knowledge.sakura.ad.jp/24059/