GCPとFirebase、AWSとAzureの無料枠を比較しました。今までFirebaseのみでしたが、nextjsを使うにあたり、上位サーバーを検討しています。vercelは見送ることしました。
vercelを見送ることにした経緯はこちらに一部記載。
個人開発のためGCPを採用することになりそうです。
目次
GCPとAWSとAzureの比較と違い(おまけでfirebase)【個人開発】
無料枠比較
項目 | AWS | Azure | GCP | Firebase |
---|---|---|---|---|
コンピューティング | EC2: 750時間 (t2.micro/t3.micro, 12か月無料) | B1S VM: 750時間 (12か月無料) | App Engine: 28hr/day, Cloud Run: 200万リクエスト/月 | Cloud Functions: 125k invocations/month |
ストレージ | S3: 5GB | Blob Storage: 5GB (12か月無料) | Cloud Storage: 5GB (US regions) | Cloud Storage: 5GB |
データベース | DynamoDB: 25GB, RDS: 750時間 (t2.micro, 12か月無料) | Cosmos DB: 400 RU/s (12か月無料) | Firestore: 読み込み5万/日、書き込み2万/日 | Firestore: 読み込み5万/日、書き込み2万/日 |
リクエスト数 | Lambda: 1M req/month | Functions: 1M req/month (12か月無料) | Cloud Run: 200万リクエスト/月, 36万 GB秒, 18万 vCPU秒 | Cloud Functions: 125k invocations/month |
データ転送 | 15GB out/month | 5GB out/month (12か月無料) | 1GB North America to all regions (except China and Australia) | 10GB out/month |
無料期間 | 12か月 (一部サービスは常時無料) | 12か月 | Always Free (特定のサービス/リージョン、有効期限なし) | Always Free(有効期限なし) |
- この表は一部の主要な無料枠のみピックアップ。特に気になるポイントはマーカーしました。変更が入る可能性があるため参考程度にしてください。
- AWSの「12か月」は新しいアカウント作成からの期間で、その後は通常料金が適用されますが、一部のサービス(例: Lambda, DynamoDB)は特定の範囲内で常時無料です。
GCPは無料枠に寛容そうです。法人の大規模開発ならAWSなどがいいかもしれませんが、個人開発は無料枠が大事です。無料枠で運営してサービスがのってきたら無理のない範囲で支払いが発生するぐらいが理想です。Always Freeがあるから、やっぱGCPになりますかね。
以下の対象プロダクトは、指定の使用量上限まで無料でご利用いただけます。この無料の使用量上限に有効期限はありませんが、変更されることがあります。
https://cloud.google.com/free?hl=ja
実際、個人開発ではAWSではなくGCPを使っている人が多いです。
GCPとFirebaseの無料枠比較!どっち!?併用は?【個人開発】
GCPとFirebaseは併用が可能です。
項目 | Google Cloud Platform (GCP) | Firebase |
---|---|---|
ストレージ | Cloud Storage: 5GB月の Regional Storage (無料枠は米国リージョンのみ) | Cloud Storage: 5GB |
Cloud SQL: 250MB | Realtime Database: 100 シミュルテニアス接続 & 1GB ストレージ | |
データベース読み取り・書き込み | Firestore: 読み込み5万/日、書き込み2万/日 | Firestore: 読み込み5万/日、書き込み2万/日 |
Cloud SQL: 無料枠なし | Realtime Database: 10GB ダウンロード/月, 125K 書き込み/日 | |
アップロード/ダウンロード | Cloud Storage: 5,000回のクラスAオペレーション/月, 5万回のクラスBオペレーション/月 | Firebase Storage: 2万アップロード/日,5万ダウンロード/日 |
リクエスト数 | Cloud Run: 200万リクエスト/月, 36万 GB秒, 18万 vCPU秒 | Cloud Functions: 12.5万 リクエスト/日, 4万 GB秒, 4万 vCPU秒 |
インスタンス時間 | App Engine: 28時間 F インスタンス/日, 9時間 B インスタンス/日 | Cloud Functions: 無料枠なし |
課金外の外部 IP | Compute Engine: 課金なし | – |
Stripe | Cloud RunとApp Engine | Firebase Extensionsの「Run Subscription Payments with Stripe」 |
無料期間 | $300 クレジット (90日間)。以後、Always Free | Spark プラン: 常時無料!Cloud Functionsは従量制の登録が必要 |
もう少し詳しく比較しました。Firebaseはアップロードがゆるいなという気がしました。
GCPはアップロードが5000、ダウンロードは5万っぽい。
- クラス A オペレーション: 主にアップロードやメタデータの変更など、オブジェクトの作成、上書き、削除といった操作を含む。
- クラス B オペレーション: 主にダウンロードやリスト取得など、オブジェクトの取得やリスト操作を含む。
たぶん以下がダウンロードをさすっぽいです!
storage.*.get
https://cloud.google.com/storage/pricing?hl=ja#operations-by-class
SSRはCloud FunctionsとCloud Runのとちらでも構築できるようです。
Cloud Functionsはリソースの制限が厳しいため、SSRのサイトを構築するためにはCloud Runの方がよさそうです。
StripeはFirebase Extensionの方が簡単だけど、Cloud Runの方が応用がききそうです。
Cloud Storageは5GBは足りない!?
動画を置いたら5GBはオーバーしそうです。VPSサーバーかレンタルサーバーに置いたらよさそうです。
Xserver VPSと安価なスターサーバーを使っています。サブドメインを使ってWordPressをインストール!ヘルプなどのドキュメントを管理するのもお手軽そうです。
うちのように技術記事をかいてアドセンスとAmazonでも張っておけばサーバー代ぐらいは軽くペイできるため、こちらのランニングコストは気にならなくなります。
ちなみに、Cloud Storageの5GBは、firebaseで5GB、GCPで5GBあわせて10GBなんてことはできないようです。あくまでGoogleのサービスはある程度共通化されているとみるべきですかね。
AppEngineとCloudRunはどっち!?
AppEngineは注意が必要そうです。料金が想像以上にかかってしまったという口コミが多いんですよね。
なんか2日からAppEngineが課金されるようになってた。このままだとサーバー代高くなっちゃうのでブックマーク&履歴機能の処理変えないと。ぶっちゃけ、クライアントから直でFirestoreでも問題ないので一旦そういうふうに変更し、その後CloudRun+Railsの新API側に移行させよう。
— scrp@AAHub開発 (@aahub_dev) June 6, 2023
AppEngineでアホみたいにお金がかかっていた件、恥ずかしいが記事にした。
— catnose (@catnose99) December 26, 2020
GAEのスタンダード/フレキシブル環境を選ぶときのヒントと設定の注意点https://t.co/mMsN1D5zqK pic.twitter.com/8ZyqUvWBie
でも、これからはじめる人はCloudRunでよさそうですね。
やっぱりCloud Runの時代なのかなー。自由度も高いし。App Engineすきなんだけどなー。#gcma_summit
— A Pythonista (@Pybegi) July 14, 2023
【Go/GCP】ライブゲーム「あてっこ!ぷにまるず」を支えるバックエンド技術 – Mirrativ Tech Blog https://t.co/bPJD8V7Zs3
— 鉄 -TETSU- (@tetsujp84) July 28, 2023
今度はライブゲームのバックエンドのお話。
ゲームであってもGCEとかApp Engineとかすら使わずCloud Runで動いちゃうのは驚き。
ご参考になれば幸いです。
コメント