RailsでSQLiteが使えるPaaSを求めて
さまよいました。
けっこう使えないのが当たり前みたいな状況だった。
スケールを想定したクラウドでローカルにDBにあってどうするんだよ、ということなのだろう。
しかしローカルでSQLiteのDBを編集してサーバーに上げて表示、みたいなものをRailsで作ったのでSQLiteを是非ともproductionで使いたいという要件がこちらとしてはあったのですよ。
ちなみに規模感は極小です。
試してみてダメだったもの
- Heroku
- Engine Yard
- Sqale
- AWS OpsWorks(PaaSとちょっと違うが)
HerokuはSQLite不可に加えていつの間にかDBの無料領域が少なくなってるしでダメだった。
がんばってPostgreSQLにコンバートしたとしてもコストが高くなりすぎる。
ここは無料で間に合うごく小さなものか、しっかり動かしたい中規模以上のもの向きという気がする。
ところで東京リージョンいつ来るんでしょうか。
Engine YardはSQLiteもダメだったが、それよりも管理画面が重すぎてダメだった。
繁盛しすぎ?
SqaleはSQLiteはダメだったが、普通にMySQLで小規模〜中規模くらいならけっこういいところかもしれない。
DBが2GBまで使えて月額940円と料金が安くて明確だし、拡張もある程度はできるし、管理画面のUIもシンプルでわかりやすくて良い。
AWS OpsWorksはデプロイ時にdatabase.ymlが書き換わるのでダメだった。アプリケーションサーバーからMySQL用のインスタンスに接続することを想定しているのだろう。
デプロイ後にアプリケーションサーバーのインスタンスにsshで入って手動で書き換えればいけたけど、デプロイのたびに上書きされるし、まあ明らかに今回のような規模で使うものではないし。
ところで管理画面のUIがすごいこなれていて、割と複雑なサービスのはずなのにすんなり動くとこまで持って行けたのには感心した。
ただリリースされたばかりのベータなのでたまに挙動がおかしい。(アプリのデプロイフォームがずっと表示されなかったり)
いけたもの
- C4SA
- AWS Elastic Beanstalk(やはりPaaSとちょっと違うが)
AWS Elastic Beanstalkは意外に手軽でよかったが、1台で十分なアプリにはやはり大げさ。
C4SAは管理画面の操作性がイマイチだけど、サーバーのレスポンスなどは悪くない。
ニフティクラウド本体同様に高パフォーマンスであると期待していいのだろうか。
月額945円と料金も分かりやすいし、たくさんのフレームワークに対応しているのもいいですな。
試さなかったもの
MOGOKは新規登録制限中というメールが来て、使うのを諦めたら5分後くらいに準備OKってメールが来てた。しかしその準備OKメールに気がついたのが数時間後だったのでPaaS探しが一段落してしまった後で、使う気が完全になくなっていた。
あと今のところ独自ドメインが使えないというのは致命的。
AppFogはネットワークが国外なので今回は却下したけど、でもそれ以外はけっこういいかも。
DBの無料範囲がHerokuより大きい。
結論
試すだけならどこも無料なので助かる。
今回はとりあえずC4SAでしばらく行ってみる。
ちなみにEngine Yard、C4SA、AWS OpsWorksでGitサーバーが必要だったので、Githubのプライベートリポジトリを作るために有料プランにしてみた。これはいろいろと捗る。
とは言え主に個人開発だからローカルのリポジトリからデプロイできるHerokuやSqaleみたいなやり方の方が好きだけど。
2013/02/28追記
デプロイしたもののRails.envがdevelopmentになっており、productionに変更する方法がわからなかったのでC4SAやめました。
Ruby2.0と戯れるのを兼ねて自前構築で行く。