GAE-Cron(Google App Engine上で動作する簡易 web cron サービス)の Python 2.7 runtime 版を公開しました。
version 0.02aをPython 2.7 runtime対応版に修正したものであり、機能的には変わりません。
GAE-Cron ソースコード
GAE-Cronの説明書
furyutei/GAE-Cron · GitHub
GAE-Cron最新版ダウンロード
Google App Engine Python 2.7 runtime 開発環境が必要
新版の GAE-Cron を使用(デプロイ)するためには、Google App Engine Python 2.7 runtime 環境が必要になります。
既に Python 2.5 runtime 環境を構築済みの方も新規構築が必要です。
- Python は 2.7.x をインストールして下さい。
2014.04.20現在の最新版はPython 2.7.6です。ただ、2.7.6ではエラーが発生したという記事もありましたので、2.7.5をインストールする方が無難かもしれません。 - Google App Engine SDK for Python の最新版をインストールして下さい。
インストール後に Google App Engine Launcher を起動し、[Edit]→[Preferences...]の[Python Path]を確認し、必要に応じてPython 2.7の実行ファイルへのPATHを設定して下さい(空欄になっていて、下に「Default if not set: C:\Python27\pythonw.exe」のように表示されている場合は設定不要です)。
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)方向にスライド)
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*からの移行に限り、[全タイマ再設定]を実施しなくてもそのまま動作するはずです。ただし、動作がおかしいと思われる場合は[全タイマ再設定]を実施してみてください。