我在谷歌云平台中部署了一个Spring Boot应用程序。它运行时没有任何错误,并且我能够通过使用GCP的Web预览功能来调用项目中的Rest端点。
然而,我想做的是每天使用cronjob之类的东西调用其中一个端点。我尝试在GCP中创建一个Cloud Scheduler,但找不到发送请求的url。我迷失在GCP文档中,尝试了许多不同的方法,比如对我的项目进行码头化,创建云函数等,但都无济于事。
在我部署在GCP中的项目中,自动和定期调用端点的最简单方法是什么?
您是否真的将应用程序部署到GCP(部署到计算引擎VM、Kubernetes引擎集群、作为应用程序引擎应用程序等(?或者您只是在Cloud Shell中运行应用程序?
如果是后者,那么您的应用程序实际上并不是为生产使用而部署的。相反,云外壳更类似于GCP中为您按需(免费(提供的开发工作站。要在该计算机上访问您的应用程序,您必须使用web预览功能,该功能将浏览器连接到该计算机上的端口(在对您进行身份验证后(。当您断开与Cloud Shell的连接时,机器会在一段时间不活动后离开(尽管主目录是持久的(。
我尝试在GCP中创建一个Cloud Scheduler,但没有成功以查找发送请求的url。
如果您的应用程序部署在GAE上,根据官方的云计划程序文档(步骤7(,当选择应用程序引擎HTTP目标:
指定作业将联系的应用程序引擎终结点的相对URL。如果使用默认值/,则作业将使用PROJECT-ID.appspot.com,其中PROJECT-ID是您当前的项目ID。
否则,请在该步骤中选择HTTP目标-您需要指定作业将联系的端点的完全限定URL。
自动定期调用我在GCP中部署的项目中的端点?
Cloud Scheduler是重复作业的好选择。对于部署在GAE上的应用程序,您也可以使用cron.yaml调度作业。然而,由于修改cron.yaml也意味着修改和重新部署应用程序的配置,我认为使用云调度程序更方便用户。