我有一个读取数据的GAE应用程序(每天更新!)从GCS存储桶中。
问题:此应用程序在启动之前已初始化的实例(当前活动实例)时显示对旧数据的洞察
问:如何确保GCS存储桶中的数据更新时,GAE应用程序会读取更新后的数据?可以通过初始化应用程序的新实例或任何其他替代方法
应用程序信息:
运行时: Standard pyhton 3.7,
缩放:自动
发布于 2020-10-14 05:30:42
因此,从本质上讲,您需要一种在每次GCS更新发出时故意杀死GAE应用程序的所有现有实例的方法。我不认为有办法做到这一点,至少不是通过编程的方式(您可以手动从这个GCP控制台页面https://console.cloud.google.com/appengine/instances中删除实例)。
你可以通过重新部署你的应用来做到这一点。CI/CD服务能够以编程方式部署到GAE,因此您可以让一些日常cron作业触发部署。
但是,正确的方法是使用某种类型的持久性存储,如Google Datastore,而不是实例上的全局变量。然后,您可以有一个每日cron作业,它运行和下载GCS文件,并更新数据存储中的数据。然后,您的应用程序的所有实例都将从数据存储中读取数据,而不是全局变量,并将获得更新。
https://stackoverflow.com/questions/64338192
复制相似问题