从任务队列运行appengine备份

hus*_*ayt 2 cron google-app-engine database-backups

在Google App Engine 的1.8.4版本中,它声明:

此版本中的数据存储区管理员修复程序通过确保现在只能由cron或任务队列任务启动计划备份来提高安全性.管理员仍然可以通过管理控制台中的数据存储管理员启动备份.

记录了使用cron运行计划备份的方法,但是我们如何从任务队列任务启动备份?

有没有其他方法以编程方式运行备份任务?

Bry*_*utt 7

您可以使用方法GET和URL"/_ah/datastore_admin/backup.create"创建任务队列任务,并将您的参数指定为URL的参数,并将任务作为目标运行在'ah-builtin-python-bundle'版本上.例:

url = '/_ah/datastore_admin/backup.create?filesystem=blobstore&name=MyBackup&kind=Kind1&kind=Kind2'
taskqueue.add(
        url=url,
        target='ah-builtin-python-bundle',
        method='GET',
        )
Run Code Online (Sandbox Code Playgroud)

我有cron作业触发我自己的处理程序,然后查找配置并根据该配置创建任务队列备份.这让我可以更改备份设置,而无需更新cron作业,让我有更多的控制权.

您可以在URL中指定的选项与文档针对CRON作业备份描述的选项相同,因此您也可以指定namespace和gs-bucket-name.

我相信在Java中这样做你必须在队列定义中创建一个带有目标的队列,并将你的任务添加到该队列.