個人開発のガチャガチャアプリをAWSで1年運用してわかった、レンタルサーバーとの本当の使い分け

個人開発のガチャガチャアプリをAWSで1年運用してわかった、レンタルサーバーとの本当の使い分け

「サーバーどこに置くか問題」って、個人開発してると絶対通る道ですよね😔

実は自分が運営している、ガチャガチャの見た目や演出を自由にカスタマイズできるアプリ「ガチャポイ」、これをAWS上でちょうど1年運用してきました。

アニメーション表示、画像・動画処理、データベースをガンガン使うタイプのアプリなので、正直サーバー選びは結構悩みました。

今回はその1年間の実体験をベースに、AWSってぶっちゃけどうなの、レンタルサーバーと比べて何が違うの、というところを自分の言葉でまとめてみます。

従量課金とスペック自由度が、負荷の重いアプリと相性良かった

AWSは従量課金制で、使った分だけ支払う仕組みです。

しかもマシンのスペックはあとから自由に選び直せます。

なのでスペック不足になる心配がほぼありません。

ガチャポイみたいにガチャガチャのアニメーション、画像や動画の処理、データベースをバンバン使うサイトでも、これがあるおかげで快適に動いてくれました。

実際AWS公式のセッションでも、インスタンスサイズを変えるだけで費用が最大4分の1になったとか、世代を新しくするだけで価格が30%下がったという事例が紹介されていて、後から調整できる自由度の大きさは伊達じゃないなと感じます。

個人開発だと最初にスペックを完璧に見積もるのって正直無理があるので、「後で直せる」という安心感、これが地味に一番でかいメリットかもしれません🤔

ガチャガチャのアニメーション表示や画像・動画処理、データベースがAWS上で快適に動いているサーバーのイメージ

パラメータストアがAI開発と噛み合いすぎてびっくりした

AWSにはパラメータストアという機能があります。

これを使うと、サーバーで使うパスワードやAPIキーなどを安全に保管してもらえます。

便利ポイントはここで、AIで開発してるときに「パラメータストアに格納する変数とパラメータを教えて」って聞くんです。

出てきた回答をそのままコピペで保存していけば、それだけで動くんですよね。

これに気づいたとき、地味に感動しました😊

Secrets Managerという似た機能も一応あるんですが、こっちはローテーション(定期的なキーの自動更新)とか高度な管理向けの有料サービスで、1件あたり月$0.40+API呼び出し料金がかかります。

個人開発でそこまでの機能が必要になることはあんまりないので、無料で使えてKMS暗号化(データを暗号化する仕組み)やIAM(権限管理)でのアクセス制御にも対応しているパラメータストアで基本的には十分だと思います。

AIと一緒に開発する時代だからこそ、こういう「聞いてコピペするだけで安全に管理できる」仕組みがあると、開発スピードが結構変わってくる感じがします。

セルフ構築の手間はあるけど、その分セキュリティの自由度が段違い

AWSはほとんどセルフでサーバーを構築しないといけません。

正直ここは面倒だし、最初は何から手をつけていいかわからなくて詰まりました😔

でもちゃんと調べながら構築していけば、セキュリティ的に堅牢で、設計の自由度もかなり高いなというのが実感です。

例えばレンタルサーバーだと、特定の攻撃に対する防御策やレートリミット(一定時間あたりのアクセス回数制限)の設定を細かくいじれない、みたいな制約があります。

AWSならAWS WAFのレートベースルールみたいに、制限値も、評価する時間の幅(1〜10分)も、IPごとに集計するかどうかも、自分のサイトの仕様に合わせて細かく設定できます。

ちなみにセキュリティグループ(通信の許可・拒否を設定する仕組み)はデフォルトだと全許可の状態になっているので、ここは自分でちゃんと絞る必要があります。

こういう細かい設定を自分の判断で積み上げていけるからこそ、自分自身だけでなくユーザーも守ることにつながるなと感じています。

レンタルサーバー事業者側の説明を見ると、レンタルサーバーはOSやセキュリティのアップデートを事業者側が代行してくれる一方、クラウドは管理者権限がユーザーに渡る分、運用責任もユーザー側に来ると明記されています。

つまり「手間をかけて自由と責任を取りに行くか」「手間を減らして事業者にお任せするか」というトレードオフなんですよね。

セキュリティグループやレートリミットなど細かいセキュリティ設定を表すイメージ

項目AWSレンタルサーバー
攻撃対策(WAFなど)AWS WAFで細かくルールを設定可能事業者標準の対策のみで、カスタマイズ不可なことが多い
レートリミット設定制限値・評価する時間幅(1〜10分)・IPごとの集計有無まで自由に設定可能基本的に設定不可、または事業者側の固定設定のみ
通信の許可設定セキュリティグループで通信を個別に許可/拒否(初期状態は全許可のため要設定)事業者側があらかじめ設定済みで、ユーザーは変更不可
OS・セキュリティアップデート自分で管理・実施(運用責任はユーザー側)事業者側が代行してくれる
設計の自由度高い(その分スキルと手間が必要)低い(その分手間は少ない)

実際いくらかかるのか、自分の月$17という数字とよそのケースを並べてみる

ここが一番気になるところだと思うので、実際の数字も出しておきます。

自分の肌感だと、AWSは月々最低17ドルほどはかかります。

一方でレンタルサーバーは月々200円〜1,500円くらいの幅で、エックスサーバーやロリポップ、さくらのレンタルサーバなどいろいろな選択肢があります。

実際に料金相場を見ても、ロリポップは月額99円〜、エックスサーバーは月額1,100円程度、さくらのレンタルサーバは月額550円程度からとなっていて、AWSとは一桁違う世界です。

他の人の実例も見てみると、ほぼ無アクセスの個人開発サービスでも月額約3,817円かかったという報告があって、内訳はELB(ロードバランサー、アクセスを複数サーバーに振り分ける仕組み)が約1,900円、EC2インスタンス(仮想サーバー本体)が約1,188円、EBS(ストレージ)が約389円だったそうです。

ロードバランサーを使うかどうかだけでも、これくらい金額が変わってくるということですね。

もっと最小構成に寄せれば、t4g.microのようなインスタンスタイプ(スペックの組み合わせ)なら月額$7程度に抑えられるという試算もありますし、AWSの中にもLightsailという月$5〜20の固定額で使えるサービスもあります。

逆側の失敗談としては、大学ラボ用に別のクラウドでWordPressを構築したらほぼ無アクセスなのに月8,500円請求された、というエピソードもあって、レンタルサーバーなら500円で済んだはずという話でした。

クラウドは「使った分だけ課金」される代わりに、構成次第で簡単に想定より高くなる、というのは頭に入れておいた方がいいポイントだと思います😅

サービス・構成月額目安備考
AWS(自分のガチャポイの実運用)約$17〜(概算2,500円〜)アニメーション・画像動画処理・DBを使う構成
AWS 最小構成(t4g.microなど)約$7〜(概算1,050円〜)インスタンスタイプを絞った試算
AWS Lightsail$5〜$20(概算750〜3,000円)固定額で使えるAWSの簡易プラン
AWS実例(ELB+EC2+EBS、ほぼ無アクセス)約3,817円内訳: ELB約1,900円 + EC2約1,188円 + EBS約389円
ロリポップ!99円〜レンタルサーバー
さくらのレンタルサーバ550円〜レンタルサーバー
エックスサーバー1,100円前後〜レンタルサーバー

結局、AWSを選ぶべきかどうかの判断基準

ここまでの話をまとめると、AWSを選ぶかどうかは「設計の観点」で決めるのがいいと思っています。

1つ目は、決済やユーザー情報を扱うなど、セキュリティ的に厳しく管理しないといけないサイトかどうか。

2つ目は、自分のガチャポイのように、アニメーションや画像・動画処理、データベースをガンガン使うような、スペックを必要とするサイトかどうかです。

この2つに当てはまらないなら、正直AWSを使う必要はあまりなくて、月々200〜1,500円くらいで使えるレンタルサーバーを検討する方がいいというのが自分の結論です。

よく言われていることですが、AWS導入でつまずきがちなポイントは「コスト管理の難しさ」「責任共有モデル(クラウド側とユーザー側で責任範囲を分担する考え方)の理解不足」「専門知識の確保」の3つです。

従量課金の本当のメリットは「安いこと」というより「試して失敗したときのコストが低いこと」だという考え方、これは個人開発者として結構納得感があります。

逆に言うと、コストの見積もりや責任範囲の理解をサボると、想定外の請求に驚くことになるので、そこだけは覚悟して踏み込む必要があるかなと思います🙄

セキュリティの厳しさと必要なスペックの2軸でAWSかレンタルサーバーかを選ぶイメージ

まとめ

1年間AWSでガチャポイを運用してみて、率直に言うと「セルフ構築は面倒だけど、それに見合うだけの自由度とセキュリティの堅牢さがある」というのが結論です。

パラメータストアみたいに、AI時代の開発と噛み合う機能があるのも地味に大きなポイントでした。

ただそれは、決済やユーザー情報を扱う、もしくはスペックをガッツリ必要とするサイトに限った話で、そうじゃないなら月数百円のレンタルサーバーの方が絶対にコスパはいいです。

もしこれから個人開発のサーバーをどこに置くか迷っている人がいたら、まず自分のアプリが「セキュリティ的にシビアか」「スペックが必要か」の2軸で考えてみることをおすすめします。

ちなみに自分が作っているガチャガチャカスタマイズアプリガチャポイも、こういう試行錯誤の上で動いています。

もし興味があれば覗いてみてください😊

← 一覧へ戻る