コンテンツにスキップ

Vendure ホスティングプラットフォーム選定書

選定結果

決定: Fly.io を Vendure のホスティングプラットフォームとして採用

選定理由

1. 日本リージョン対応

  • 東京リージョン(nrt) で低レイテンシを実現
  • 日本の顧客への応答速度を最適化

2. 軽量な立ち上げ

  • Docker コンテナベースでの迅速なデプロイ
  • 開発からプロダクションまでのシームレスな移行
  • Git プッシュベースの自動デプロイ

3. 小規模ECに最適なコスト

  • スタートアップ・小規模 B2B EC に適した価格帯
  • 必要に応じたスケーリング対応

4. Vendure との親和性

  • Node.js アプリケーションに特化した最適化
  • PostgreSQL、Redis の統合サポート
  • GraphQL API の高速配信

コスト比較分析

Fly.io 構成(月額)

構成要素 コスト 備考
App サーバ (2台) $10-20 Vendure API + Worker
PostgreSQL $10-20 マネージド Postgres
Redis $5 セッション・キャッシュ
ストレージ $5 画像・ファイル保存
合計 $30-50 約3,000-8,000円

AWS 構成(月額)

構成要素 コスト 備考
ECS/Fargate 5,000-10,000円 コンテナ実行環境
RDS PostgreSQL 30,000-40,000円 高可用性 DB
ElastiCache Redis 6,000円〜 マネージド Redis
S3 + CloudFront 1,000-3,000円 ストレージ・CDN
合計 40,000-60,000円

コスト差: Fly.io は AWS の約 1/5 〜 1/10

トレードオフ分析

Fly.io の優位性

  • ✅ 大幅なコスト削減
  • ✅ 開発体験の向上
  • ✅ 迅速なデプロイメント
  • ✅ 日本リージョンでの低レイテンシ

Fly.io の制約

  • ⚠️ AWS と比較した場合の冗長性・SLA
  • ⚠️ エンタープライズサポートレベル
  • ⚠️ 監査・規制対応の成熟度

リスク評価と対策

可用性リスク

リスク: クラウド障害による一時的なサービス停止 対策:

  • マルチリージョン構成の検討(将来的)
  • 定期バックアップの自動化
  • 障害時の復旧手順の文書化

スケーラビリティ

評価: B2B ECの典型的な負荷パターンに適合

  • 平常時: 低〜中程度のトラフィック
  • ピーク時: 予測可能な負荷増加
  • Fly.io の自動スケーリングで対応可能

移行戦略

フェーズ1: Fly.io での本格運用

  • 初期コストを抑えた迅速な市場投入
  • B2B 顧客の利用パターン・負荷の把握
  • 運用ノウハウの蓄積

フェーズ2: 必要に応じた AWS 移行検討

移行判断基準:

  • 月間売上が一定規模を超えた場合
  • 99.9% 以上の SLA が事業要件となった場合
  • 規制・監査要件が厳格化された場合

技術的考慮事項

Vendure on Fly.io の技術構成

# fly.toml 例
app = "ritsubi-vendure"
primary_region = "nrt"  # 東京リージョン

[build]
  image = "node:18-alpine"

[[services]]
  http_checks = []
  internal_port = 3000
  processes = ["app"]
  protocol = "tcp"

[env]
  NODE_ENV = "production"
  DATABASE_URL = "postgres://..."
  REDIS_URL = "redis://..."

データベース戦略

  • PostgreSQL on Fly: 開発・ステージング環境
  • Fly Postgres: 本番環境(自動バックアップ・レプリケーション)

監視・ログ戦略

  • Fly.io Metrics + 外部監視サービス(DataDog/New Relic)
  • ログ集約: Fly.io Logs → 外部ログサービス

結論

リツビ B2B ECサイトの初期運用において、Fly.io はコスト効率性開発速度の両面で最適な選択です。

将来的な事業成長に応じて AWS 等への移行も可能な設計とし、スタートアップフェーズでの迅速な価値提供を優先します。


決定日: 2025年9月17日 承認者: プロジェクトチーム 次回見直し: 2025年12月(サービス開始3ヶ月後)