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
無料で楽しむ Go サーバー開発のススメ
Search
Kotaro Otaka
August 08, 2024
Programming
11
3.7k
無料で楽しむ Go サーバー開発のススメ
The Go gopher was designed by Renée French.
https://golangtokyo.connpass.com/event/324882/
Kotaro Otaka
August 08, 2024
Tweet
Share
More Decks by Kotaro Otaka
See All by Kotaro Otaka
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
400
組込みだけじゃない! TinyGo で始める無料クラウド開発入門
otakakot
1
12
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
1
3.5k
SQLBoiler がメンテナンスモードになりまして
otakakot
0
190
Wasm わからないけど Go で実装したいから入門する
otakakot
1
10k
cmp.Or に感動した
otakakot
3
860
net/http/httptest が推しです♡
otakakot
3
300
Go のテストで失敗をマークする
otakakot
1
230
Other Decks in Programming
See All in Programming
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
400
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
110
OSS開発者の憂鬱
yusukebe
12
3.9k
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
120
Functional Calisthenics in Kotlin: Kotlinで「関数型エクササイズ」を実践しよう
lagenorhynque
0
130
Inside of Swift Export
giginet
PRO
1
550
知られているようで知られていない JavaScriptの仕様 4選
syumai
0
590
flutter_kaigi_2025.pdf
kyoheig3
1
300
AI駆動開発ライフサイクル(AI-DLC)のホワイトペーパーを解説
swxhariu5
0
810
Dive into Triton Internals
appleparan
0
490
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
1
560
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
130
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
1.8k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
How STYLIGHT went responsive
nonsquared
100
5.9k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
320
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Site-Speed That Sticks
csswizardry
13
960
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Side Projects
sachag
455
43k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Faster Mobile Websites
deanohume
310
31k
Transcript
#golangtokyo 無料で楽しむ Go サーバー開発のススメ おーたかこーたろー @otakakot The Go gopher
was designed by Renée French. The icon was designed by @avocadoneko. golang.tokyo #36 〜真夏のLTナイト2024〜 2024.08.08
#golangtokyo ※ 今日の内容は趣味レベルの話です
#golangtokyo サーバーどこにデプロイしていますか ... ???
#golangtokyo コスト気になりませんか ... ???
#golangtokyo クラウド破産 もし失敗して 大量の請求があったら ...
#golangtokyo クラウド破産 今日はコストを気にせず楽しめるサービスを紹介
#golangtokyo bio Web Engineer 新卒入社 2020 年 4 月 ~
Hello Golang ! 2021 年 4 月~ @otakakot @otakakot Web Engineer 株式会社ビットキー 2022 年 11 月 ~ Kotaro Otaka / 大高 浩太郎 The Go gopher was designed by Renée French. The icon was designed by @avocadoneko.
#golangtokyo アジェンダ 01. 3つのおすすめサービス 1. Koyeb 2. Cloudflare 3. Vercel
02. 事例紹介
#golangtokyo アジェンダ 01. 3つのおすすめサービス 1. Koyeb 2. Cloudflare 3. Vercel
02. 事例紹介
#golangtokyo 1. Koyeb https://www.koyeb.com/ • コンテナを無料でデプロイできちゃうサービス • (おすすめという割に私自身そこまで遊んでない) • 普段の
Go 開発と同じ体験でコンテナは用意 • 用意したコンテナを指定するだけでデプロイが可能 • ( 手軽にコンテナビルドできる ko というツールもおすすめ )
#golangtokyo 2. Cloudflare https://www.cloudflare.com/ • CDN ( Content Delivery Network
) やセキュリティ対策などを提供する サービス • エッジコンピューティングを活用した開発者向けのプラットフォームも提供 • Cloudflare Workers という FaaS ( Function as a Service ) にて無料でサー バー構築が可能
#golangtokyo • Cloudflare Workers は JavaScript (TypeScript) もしくは Wasm (Rust)
• syumai/workers を活用することで Go の開発が可能に • 参考: Goで始めるCloudflare Workers ( SpeakerDeck ) Cloudflare Workersで簡単にGoのHTTPサーバーを動かすためのライブラリを作った ( Zenn ) 2. Cloudflare
#golangtokyo • ほかにも無料で利用できるリソースが存在 ◦ Cloudflare Workers KV ( Key Value
Store ) ◦ Cloudflare D1 ( Edge SQLite ) ◦ Cloudflare R2 ( <-> AWS S3 ) • Cloudflare Workers の無料版の制限 ◦ デプロイサイズ上限が 1 MB ◦ 実行時間制限が 10 [ms] etc ... 2. Cloudflare
#golangtokyo 3. Vercel https://vercel.com/ • PaaS ( Platform as a
Service ) • Next.js ( React Framework ) からホスティングのイメージが強いが サーバーサイドの構築も可能 ◦ Vercel Functions • Go のデプロイも可能
#golangtokyo 3. Vercel • ほかにも無料で利用できるリソースが存在 ◦ Vercel Postgres ( RDB
) ◦ Vercel KV ( Key Value Store ) ◦ Vercel Blob ( ファイルストレージ ) ◦ Vercel Edge Config ( Read Only Datastore )
#golangtokyo 3. Vercel いくつか記事を書いたので気になる方がいましたらチェックしてみてください • Vercel に Go サーバーを無料でデプロイできるんです! ◦
紹介記事 • Vercel × Go で開発するときの Tips ◦ パスルーティングの話 • Vercel Storage を Go で扱う ◦ 各種 Storage を実際に Go で扱うサンプルコード
#golangtokyo アジェンダ 01. 3つのおすすめサービス 1. Koyeb 2. Cloudflare 3. Vercel
02. 事例紹介
#golangtokyo 事例紹介:Slack に送信した記事URLを収集するサービス • Slack の無料版で 90 日でメッセージが非表示になることがきっかけ • いろんな無料サービスを組み合わせる
• あえて複雑(?)にしたりして遊ぶ • Okteto という Kubernetes が無料で使えるサービスがメイン • Okteto の無料版が廃止になったため開発停止 ( + 飽きた ... ) ◦ 参考:【deprecated】oktetoで無料Kubernetesを遊び尽くす
#golangtokyo 事例紹介:Slack に送信した記事URLを収集するサービス
#golangtokyo おまけ • CockroachDB (PostgreSQL) • yugabyteDB (PostgreSQL) • Xata
(PostgreSQL) • Neon (PostgreSQL) • Upstash (Redis, Kafka, etc ... ) • Resend (メール送信)
#golangtokyo 事例紹介:OpenID Connect • Cloudflare で遊びたいなというモチベーション • 絶賛遊んでいる最中 • OpenID
Provider 側をデプロイ • Relying Party 側は手抜きでローカルのみ • Web 画面も手抜き • 実装コードを閲覧できますが OIDC として不完全なのであまり参考にはせず
#golangtokyo 事例紹介:OpenID Connect
#golangtokyo おまけ • Supabase • Deno Deploy JavaScript 実行環境 +
Wasm 対応 Deno Deploy は syumai/deno-deploy-scale-image で Go を利用
#golangtokyo まとめ 3つのおすすめサービス 1. Koyeb 最も手軽にデプロイ 2. Cloudflare 制限の中どう工夫するか 3.
Vercel 制限はゆるく連携するリソースもある
#golangtokyo さいごに ...
#golangtokyo クラウド破産 個人開発・趣味レベルの使い方
#golangtokyo クラウド破産 いいなって思ったら 課金しましょう!