ダメでしょ!

プログラミングとか怒られた話とか…

sqale がサービス終了するので、Heroku に移行した

sqale からの移行推奨先は Heroku

info.sqale.jp

公式にそのような案内がありました。
ただ、正直な話、レイテンシが発生するということ、ドル払いになってしまうことから最初は他のサービスに移行したいと考えていました。

移行先調査した

ということで、移行先を検討してみたんですが、国内サービスは(私の観測範囲では)見当たらなかったんですよね。
で、結局
AWS
GCP
・Azure
・Heroku
という形になってしまいました。
この内、
AWS
はIaaSしかなさそう、
GCP
はPaaSがあったが、rubyはベータ版?っぽい、
・Azure
はよくわからんかった。
となり、結局Herokuになってしまった。
もう少し調査に時間がかけられたら・移行に時間がかけられたら、というたらればはあるのですが、いかんせんあまり時間ばかりもかけていられなかったので。

Heroku に移行すると大半の人はコストアップになりそう

というのが、Heroku のデータベースに起因してきます。
デフォルトでは、DBの容量がたったの5MB。(ClearDB MySQLの場合)

Sqaleでは2GB使えていた(ハズ)なので、移行を検討している殆どの人が引っか

elements.heroku.com

かるのではないかと。
で、これを1GBにしようとすると、9.99ドル/月が必要になります。

Heroku サーバ自体が、24時間無停止にしようとすると7ドル/月 かかるため、併せて16.99ドル/月 が最低料金になるかと。

Heroku くらいしか同じように使えるところがないからしょうがない・・・

月額が約2倍となってしまい、更に東京リージョンではないためにレイテンシが発生するという全然嬉しくない結果なのですが、他が見当たらないのでしょうがないです。

sqale のサービス終了、痛いです。

移行してみて

で、実際 Heroku に移行してどうなのか、ですが、レイテンシはもちろんありますが、それ以外の部分は結構使いやすいです。
一つつまずいたのが、crontab です。
今までは whenever という gem で crontab の設定を管理していたのですが、Heroku ではcrontab が使えないようです。
代わりに Heroku scheduler というものでバッチ系の処理を管理するみたいです。

Heroku Scheduler | Heroku Dev Center

そのあたりがわかっていなかったので、対応に時間がかかりました。