使用java的GAE上的Cron作业失败

时间:2015-11-03 15:09:26

标签: java google-app-engine cron

我正在使用GWT java GAE开展项目。在我的项目中,我使用过cron job。 当我按照cron.xml每2分钟计划一次时间,然后它的工作正常我会得到我的输出。但是当我按照每24 hours或每天21:00安排时间时,然后执行cron作业,但抛出错误: -

E 2015-11-03 20:18:10.825
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Date Before Adding  Day03-Nov-2015
    E 2015-11-03 20:18:10.832
  com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Today Date -30 Days DateSat Oct 03 23:59:59 UTC 2015
E 2015-11-03 20:18:10.832
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Today DateMon Nov 02 18:30:00 UTC 2015
E 2015-11-03 20:18:10.832
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Date After Setting the Time Mon Nov 02 23:59:59 UTC 2015
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Date Before Adding  Day03-Nov-2015
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Today Date +30 Days DateWed Dec 02 18:30:00 UTC 2015
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Date Before Adding One DayMon Nov 02 18:30:00 UTC 2015
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Today Date +30 Days DateThu Dec 03 18:29:29 UTC 2015
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: In Contract List
E 2015-11-03 20:18:10.833
com.slicktechnologies.server.cronjobimpl.ContractRenewalCronJobImpl ContractRenewallist: Date After Adding One DateMon Nov 02 23:59:59 UTC 2015
I 2015-11-03 20:18:11.146

此请求导致为您的应用程序启动了一个新进程,从而导致您的应用程序代码首次加载。因此,此请求可能需要更长的时间,并且使用的CPU比典型的应用程序请求更多。

任何帮助

提前致谢

1 个答案:

答案 0 :(得分:1)

关于启动新实例的消息不是错误,它只是一条信息性消息,预计在动态创建应用实例时(请注意i标记):

enter image description here

GAE会在一段时间不活动(至少15分钟)后自动停止动态实例,并根据需要启动新实例。由于cron作业本身每2或5分钟安排一次作业,你的应用程序实例的空闲时间不够长,但可能是每天运行作业时。

here中的更多详情。

例如,如果您手动停止实例,即使每2或5分钟运行一次作业,也可以看到该消息。