Google App Engine for Java で cron を使う

2018年2月18日

この記事は最初の投稿日から13年経過しています。内容が古い可能性があります。

cronも使えるのですね。

Java 用 cron を使用したスケジュールされたタスク – Google App Engine — Google Developers

実行したい処理をServletで実装して、それを定期的に呼び出してもらうという仕組み。

レンタルサーバで動かしていたTwitterのbot(今年の経過週数 (weekofyear)さんはTwitterを使っています)をGAEに移してみました。

  • もともとJavaアプリケーションで動いていた処理をServletのdoGet()の処理に移して動作を確認
  • そのままだとGAEのURLを知っていれば誰でも動かせてしまうので、web.xmlの<security-constraint>でadminというユーザロールを指定して管理者のみが呼び出せるようにする。
  • WEB-INF/cron.xmlに実行したいURLと時間を登録する。

とりあえず直近の時間でcronの時間設定して実行したらあっけなく動いてツイートされました。(Twitter / ?)。ついでにツイートの内容にグラフっぽいものを追加してみました。しばらくこれで動かしてみます。

GAE for Javaいいですね。ちょっとしたもの動かすのに便利すぎ。

プログラム

Posted by toshyon