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
CloudFlare入門
Search
mercy
February 13, 2023
Programming
0
380
CloudFlare入門
mercy
February 13, 2023
Tweet
Share
More Decks by mercy
See All by mercy
GithubActionsではじめるDevOps
mercy34mercy
0
110
Other Decks in Programming
See All in Programming
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
670
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
150
kiroとCodexで最高のSpec駆動開発を!!数時間で web3ネイティブなミニゲームを作ってみたよ!
mashharuki
0
850
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
16
6.6k
チームの境界をブチ抜いていけ
tokai235
0
210
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
440
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
400
EMこそClaude Codeでコード調査しよう
shibayu36
0
320
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
630
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
350
AkarengaLT vol.38
hashimoto_kei
1
110
One Enishi After Another
snoozer05
PRO
0
150
Featured
See All Featured
Producing Creativity
orderedlist
PRO
347
40k
Designing for humans not robots
tammielis
254
26k
The Language of Interfaces
destraynor
162
25k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Invisible Side of Design
smashingmag
302
51k
Building an army of robots
kneath
306
46k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Why Our Code Smells
bkeepers
PRO
340
57k
Fireside Chat
paigeccino
40
3.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Done Done
chrislema
185
16k
Transcript
CloudFlare
自己紹介 名前 : マーシー (小林雅史) 大学 : 立命館大学 3回 年齢
: 21歳 好きな技術 : バックエンド,インフラ 肩書 : SAIBASHI運営,watnow代表
CloudFlareとは クラウドフレアは、コンテンツデリバリネットワーク(CDN)やインターネットセ キュリティサービス、DDoS防御、分散型ドメイン名サーバシステムを提供す るアメリカ合衆国の企業 (Wikipedia)
CDNとは コンテンツ(Webサイト、画像、動画...)を配信するための世界中に分散された サーバ群のこと 100か国、285都市以上に サーバが存在
CDNのメリット オリジンサーバが地理的に遠い場合通信に時間がかかるので、地理的に近 いCDNを使うことで高速化できる AbemaのW杯配信にも akamaiのCDNが 使用されていたらしい
CloudFlareの主な機能 • Pages ◦ Node.js,Go,Rubyなどで作られたWebPageのデプロイ • Workers ◦ javascriptとWebAssembly/WASIが実行できるサーバ •
R2 ◦ S3互換オブジェクトストレージ • Stream ◦ サーバーレスのライブおよびオンデマンド動画ストリーミング • Images ◦ 画像のリサイズ、最適化、配信
CloudFlareWorkersの詳細 • 料金 ◦ FreePlan ▪ 一部機能に制限あり ◦ PaidPlan ($5/month)
▪ 全機能が使える • 機能(+α) ◦ KV ▪ キーバリューストアストレージ ◦ Queues ▪ プログラム間のデータ転送 ◦ D1 ▪ フルマネージドSQliteデータベース
Workersの活用例 • WebAPIの高速化 ◦ CDNでのキャッシュの活用 • オリジンサーバのサーバの負荷軽減 ◦ CDNでキャッシュすることによりオリジンへの負荷軽減 •
サーバ台節約 ◦ Workersなら1日100万リクエストまで無料
Workers活用事例 • アプリ概要 ◦ 立命館大学と駅を繋ぐバスの時刻表アプリ • 技術スタック ◦ Front Kotlin(android)
Swift(iOS) ◦ backend Go • インフラ ◦ GCP AppEngin • トラフィック ◦ 1万リクエスト/日
既存構成 • ネイティブアプリから直接リクエストを送信 • 一部データに関してApp Engin上でキャッシュ化 すべてのリクエストが App Engineで 処理される
Workersを使用 • Cloud Flare WorkersをProxyサーバとして使用 • Workers内でキャッシュがあればApp Engineを呼び出すことなくレスポ ンスが返される オリジンサーバの
負荷軽減・APIの高速化が 実現
改善前後のAPIパフォーマンス • AppEnginへの直接リクエスト ◦ 平均300ms • CloudFlare経由のリクエスト ◦ 平均30ms
まとめ • CloudFlareを使おう! ◦ GCP,AWS,Azureは個人使用するにはかなり高く、初心者がインフラをやってみ たい時に、CloudFlareは全機能を月5$から使えるのでおすすめ
ご清聴ありがとうございました @mashikotyan34