Twitter botを定期実行させるPaaS先選定

Twitter上で早い者勝ちのキャンペーン等がされる事が最近多いため、定期的にそのTwitterアカウントのツイートを取得してキャンペーン関連のツイートが行われたら通知を受け取りたいと思います。
流石にこのためだけにPCを立ち上げっぱなしにするのも嫌なので、デプロイ先PaaSをどれにするか調べたメモ。

■heroku

RubyもPythonも使えていい感じのherokuさんですが、
Cronが有料($3)でHourlyと今回の目的にそぐわない感じです。
出来れば数分以内に通知を受け取りたいわけなので、
分間隔で使えるCronが欲しいところです。

と、思っていたらclockwork使えば秒単位で実行できそうでした。
Schedulerは10分間隔で可能みたいです。後でやってみます。

■fluxflex

国産のfluxflexさん。
#!/usr/bin/env python

import datetime

print 'Content-type: text/html\n\n'
print '<html><body>'
nowtime = datetime.datetime.now()
print 'Now time is %s' % nowtime
print '</body></html>'
などという軽量極まりないコードを1回実行させるとCPU時間が
0.265増えたので、3分間隔で実行させると、
0.265 * 480 = 127.2というわけで結構余裕ありそうですが、定期実行がしにくい感じです。

デプロイがgitだったりgithubからimportできたらtwitterアカウントでログインできたり、好印象。



■GoogleAppEngine

Cronが最短1分間隔で使えます。無料のQuotaは色々とややこしいのですが、
結論から言えばBotを動かす程度だとこんな感じで収まります。

Gmailからのメール送信がすごく簡単なのが良い。

■で、どれ使うの

Cloud FoundryとかDotCloudとか名前だけ知ってるやつも試したい。
DotCloudはSSHで入ってcrontabいじるみたいで楽しそう。

とりあえずGAEで作成済みなので次回はそれで。