【Solved】(续)解决LeanCloud问题(云引擎体验实例已达到最大启动时长限制,进入强制休眠状态)

标签:

  • 云引擎体验实例已达到最大启动时长限制,进入强制休眠状态
  • 因流控原因,通过定时任务唤醒体验版实例失败,建议升级至标准版云引擎实例避免休眠
  • Valine
  • Hexo
  • LeanCloud

前景:

本篇文章是【Solved】解决LeanCloud问题(因流控原因,通过定时任务唤醒体验版实例失败,建议升级至标准版云引擎实例避免休眠) | Mocha–Just a novice (xiinnn.com)的后续

问题:

根据之前这篇文章的配置,利用阿里云的云监控进行请求,防止LeanCloud实例休眠。但是利用这种方法操作有以下两个问题:

  • 由于阿里云的云监控免费版本的告警任务只有一个月的有效期,所以理论上每隔一个月都要重新设置告警任务,非常繁琐
  • 利用该阿里云的云监控,只能24小时进行监控,但是LeanCloud的实例一天只能运行16小时,也就是与之前设置的 0 */20 7-23 * * ?时间冲突了,原本计划是7:00-23:59每隔20分钟,但是阿里云的云监控是24小时间隔相应指定时间的,也就是0:00-23:59每隔x分钟(x取5,15,20,30….)

image-20210715115910509

报警日志如下:

image-20210715132924543

解决方案:

利用阿里云的分布式调度平台 SchedulerX功能

  1. 开通分布式调度平台 SchedulerX

    image-20210715120628629

  2. 依次点击应用管理-创建应用

    image-20210715131522945

  3. 应用名应用ID随便填写,点击下一步完成创建

    image-20210715131609045

  4. 点击任务管理-创建任务

    image-20210715131802688

  5. 任务名随便写,应用ID就选择刚刚创建的应用ID,任务类型选择http,url就写自己之前创建的Valine后台的URL,执行方式选择GET

    其中返回值校验key和value随便填写,因为访问Valine后台的URL得到的response请求不是json格式,也就是说,不管怎么写,都是会报警的,但是每一次的请求还是有请求成功的。也就达到了我们要唤醒Valine实例的目的。

    image-20210715131929214

  6. 时间配置,如果是想要每隔10分钟运行一次,那么就填写0 */10 7-23 *,如果想要每隔7分钟运行一次。那么就填写0 */7 7-23 *,填写完成后,点击下一步

    image-20210715132258099

  7. 在报警配置的地方,直接将失败报警选项关掉即可,因为前面无法验证返回json格式的key和value,所以一定是每次都报警的。但是只要我们有请求即可。

    image-20210715132524270

  8. 附上请求失败的截图,以及Valine实例正常启动的图片。

    image-20210715132723559

    image-20210715132813335

    image-20210715132828117