はじめに
「個人開発だし、とりあえずAWSで」
そう思ってAWSを選んだものの、毎月の請求額に震え、複雑すぎるコンソール画面に頭を抱えた経験はありませんか?
私もその一人でした。
しかし、思い切ってXserver VPSに移行した結果、コストが1/10になり、しかもアプリの動作が爆速化するという最高の結果を得られました。
この記事では、なぜ移行を決意したのか、どうやって移行したのか、そして実際の効果はどうだったのかを、具体的なデータと共に紹介します。これから個人開発を始める方、AWSのコストに悩んでいる方の参考になれば幸いです。
抱えていた課題:AWSは個人開発にはオーバースペックすぎた
私が運用していたのは、月間数万PV程度のWebサービスです。
構成は「とりあえずモダンに」ということで、以下のような構成にしていました。
- ALB (Application Load Balancer)
- ECS (Fargate)
- RDS (T2.micro)
- NAT Gateway (これが地味に高い...)
しかし、この構成には大きな問題がありました。
- コストが高い: 何もしなくても月額5000円〜10000円が飛んでいく。特にNAT GatewayとRDSが財布を直撃。
- 構成が複雑: ちょっとした修正デプロイにもCI/CDが必須、VPCやSecurity Groupの設定でハマる。
- 遅い: 低スペックなインスタンスを使っていたため、DBの応答が遅い。
「この規模のアプリに、本当にこの構成は必要なのか?」
そう自問自答した結果、脱AWSを決意しました。
移転先:Xserver VPSを選んだ理由
移行先として選んだのは、国内大手のXserver VPSです。
- 圧倒的なコスパ: 2GBメモリプランなら月額800円台(キャンペーン等活用)から。
- NVMe SSD: ディスク読み書きが爆速。
- 国内サーバー: レイテンシが低い。
アーキテクチャの変更
AWSの複雑な構成を捨て、Docker Compose一本で管理するシンプルな構成に変更しました。
Before (AWS) vs After (Xserver VPS)
Before (AWS):
- 複数のマネージドサービスを組み合わせた「分散型」。
- スケーラビリティはあるが、管理コストと金銭的コストが高い。
After (Xserver VPS):
- 高性能なVPS 1台に全てを集約する「集中型」。
- Docker Composeでアプリ、DB、Nginxを一括管理。
- スケーリングは垂直(プラン変更)で対応。
個人開発レベルなら、これで十分すぎるほど機能します。
移行の手順
移行は以下の3ステップで行いました。
1. アプリケーションのDocker化
すでにECSを使っていたので、ここはスムーズでした。docker-compose.ymlを作成し、ローカルでこれだけで動くように調整します。
version: '3'
services:
app:
build: .
ports:
- "3000:3000"
environment:
- DATABASE_URL=postgres://user:pass@db:5432/app_db
db:
image: postgres:15
volumes:
- db_data:/var/lib/postgresql/data
nginx:
image: nginx:latest
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf
- ./certs:/etc/nginx/certs
2. データの移行
RDSからpg_dumpでデータをエクスポートし、VPS上のPostgresコンテナにpg_restoreでインポート。
ダウンタイムは発生しますが、個人開発なので深夜メンテナンスで対応しました。
3. DNS切り替え
お名前.comなどで管理しているドメインのAレコードを、Xserver VPSのIPアドレスに変更。SSL証明書はLet's Encryptで無料で発行しました。
結果:劇的な改善
1. コストが1/10以下に!
これが最大の成果です。
- AWS: 約 $50 / 月 (約7,500円)
- Xserver VPS: 約 830円 / 月
年間で約8万円の節約です。これは大きい!浮いたお金で新しい技術書を買ったり、他のツールのサブスクに回せるようになりました。
2. パフォーマンスが爆速化!
T2.microなどのバースト制限があるインスタンスから、専有リソースに近いNVMe搭載のVPSに移ったことで、レスポンスタイムが劇的に改善しました。
実際の体感速度も「モサッ...」から「パッ!」に変わりました。Google PageSpeed Insightsのスコアも20ポイント近く上昇しました。
まとめ:個人開発なら「枯れた技術」と「シンプルな構成」が最強
AWSのエコシステムは素晴らしいですが、小規模なアプリには「牛刀をもって鶏を割く」状態になりがちです。
- Docker Composeでシンプルに管理
- VPSで安価にパワフルなリソースを使う
この構成は、財布に優しく、精神衛生上も非常に良いです。
「AWS代が高いな...」と悩んでいる方は、ぜひVPSへの移行を検討してみてください!
もしこの記事が参考になったら、LGTM👍お願いします!


