風柳メモ

ソフトウェア・プログラミング関連の覚書が中心

GAE-Cron:Python 2.7 runtime版を公開(version 0.0.3)

GAE-Cron(Google App Engine上で動作する簡易 web cron サービス)の Python 2.7 runtime 版を公開しました。
version 0.02aをPython 2.7 runtime対応版に修正したものであり、機能的には変わりません。

Google App Engine Python 2.7 runtime 開発環境が必要

新版の GAE-Cron を使用(デプロイ)するためには、Google App Engine Python 2.7 runtime 環境が必要になります。
既に Python 2.5 runtime 環境を構築済みの方も新規構築が必要です。


Google App Engine の Python 2.5 runtime 環境は、2014年現在非推奨となっています。

Python 2.5 runtimeを使用する新規アプリケーションの作成は出来なくなっているようです。既存アプリケーションは今のところ動作していますが、将来的には動作しなくなる可能性があります。

バージョン2.7への移行を:Google App Engine、Python 2.5ランタイムを非推奨に - @IT
Google App Engine Blog: Python 2.5, thanks for the good times

無料枠(Free Quota)で使うための設定

Google App Engine のアプリケーション管理画面より、(Administration)Application Settings → Performance にて、

  • Max Idle Instances をデフォルトの"Automatic"から"1"に下げる(左(Min)方向にスライド)
  • Min Pending Latency をデフォルトの"Automatic"から"15s"に上げる(右(Max)方向にスライド)

し、[Save Settings]をクリックして保存。


Google App Engineの無料枠(Free Quota)のリソース制限はかなりきつくなっており、油断するとすぐに"Over Quota"などと言われて一時的に使用できなくなるなどしますが、上記設定を行うことにより、かなり緩和できます。
緩和出来るだけであり、無料枠での快適な使用を保証するものではありません。念のため。

旧版からの移行について

基本的には、

  • ファイルは全て上書き。
  • *.yaml.sample となっているファイルは、*.yaml にリネーム。
    設定変更等を行っている場合、予め旧設定をメモしておき、必要な部分を手動で書き換え。
  • app.yaml の "application:" の箇所をご自分で取得されたアプリケーション名(Application Identifier:appid)に変更してアップロード(デプロイ)。
  • デプロイ後に、管理者アカウントでログインし、[全タイマ再設定]

という流れになります。

version 0.02* からの移行であれば、gaecron.yamlおよびcron.yamlはそのまま使用できますが、app.yaml は使用できません。
必ず app.yaml.sample をコピーしたものをご自分の設定に合わせて書き換えるようにしてください。
0.02*からの移行に限り、[全タイマ再設定]を実施しなくてもそのまま動作するはずです。ただし、動作がおかしいと思われる場合は[全タイマ再設定]を実施してみてください。