PHPでcloudControlとpagodaboxとherokuを試したメモ

July 21, 2012

という訳で、こっちで書いたようにphpfog が合わなかったので他を試してみた。同じ失敗をしないようある程度下調べをして 3 つを選定

共通して思ったことなど

  • 公開用とステージング用は基本的にそれぞれインスタンスを分けて使うから、環境変数の設定可能はほぼ必須
  • Git のリポジトリもひとつで行う
  • phpinfo を表示させる位までしか試してないから実運用した時にどれが高くなるかとかはわからない
  • push ごとにサーバ上のファイルが消える(正確には新しいインスタンスが立ち上がり古いインスタンスにアクセスできなくなる)

cloudControl について

  • まだ発展途上なのかこれから機能追加するといろいろなところに書いてある
  • .ccconfig.yaml で設定可能だけど設定できる項目は少ない
  • 現時点でではドキュメントが新しいものに更新でしきれてないらしい
  • 質問投げたらレスは早かった
  • Xdebug は使えない(ドキュメントにあるのは古いとのこと)
  • ひとつのアプリ内でエイリアスを作れるから公開用とステージング用とか簡単かも MySQL プラン(共用)

料金 容量

5MB Free

512MB 5.00 €/30d

20 GB 15.00 €/30d

pagodabox について

  • コントロールできる機能が豊富
  • まだまだ機能が増えてる途中
  • 設定

    • Boxfile(yaml)での細かい設定が可能
    • php バージョン
    • php.ini
    • php モジュール
  • 管理画面

    • 細かく設定できて見やすい使いやすい
    • ロールバックがワンクリックで可能
    • 環境変数の設定
  • Xdebug をリモートデバッギングには使えない
  • MySQL の料金が高めだけど管理画面から任意のタイミングでスナップショットをとれる
  • Vintage Mode (SFTP)が使える
  • アイドル状態が続くとスピンダウンする($8/mo でスピンダウンしないようにできる) MySQL プラン(共用)

料金 容量

10MB free

200MB $ 24/mo

300MB $ 37/mo

400MB $ 49/mo

500MB $ 62/mo

heroku について

  • PHP は非公式サポート
  • アドオンが豊富
  • 環境構築が柔軟

    • 足りないモジュールを自分で組み込む事ができる。
    • Buildpacksと言う仕組みを使って柔軟に環境を作ることができる。
  • php だと MySQL の情報を引っ張ってくるのが手間
  • Xdebug をリモートデバッギングには使えない(Buildpacks なら使えるのかも) MySQL プラン(共用)

料金 容量

5MB free

1GB $ 9.99/mo

5GB $ 49.99/mo

10GB $ 99.99/mo

まとめ

そのうち Heroku は正式サポートされてもっと使いやすくなることを期待しつつ、今は pagodabox を使いたい感じ。でも本当は Buildpacks を使って構築してみたい 勘違いしてる事も多そうなのでご指摘頂けるとありがたいです


Profile picture

Webのフロントエンドからバックエンド、プロトタイピングからプロダクションまで。定額の開発サービスも。詳しくはAboutページで。