【发布时间】:2018-11-19 13:16:03
【问题描述】:
关于 App Engine 可用于写入文件的 /tmp/ 文件夹的信息非常少。 https://cloud.google.com/appengine/docs/standard/java/runtime-java8#Java_The_sandbox
主要问题是这是否每个实例都是隔离的?如果一个实例保存了一个文件,启动了一个推送队列,那么推送队列是否会被同一个实例运行并且能够读取该文件?
谢谢
【问题讨论】:
关于 App Engine 可用于写入文件的 /tmp/ 文件夹的信息非常少。 https://cloud.google.com/appengine/docs/standard/java/runtime-java8#Java_The_sandbox
主要问题是这是否每个实例都是隔离的?如果一个实例保存了一个文件,启动了一个推送队列,那么推送队列是否会被同一个实例运行并且能够读取该文件?
谢谢
【问题讨论】:
/tmp 目录实际上存在于内存中,因此它是每个 GAE 实例的本地目录。从您引用的文档中:
/tmp中的文件将消耗分配给您的实例的内存。
通常,不能保证推送队列任务的执行发生在将任务入队的同一实例上。
这种保证只能存在于一种非常具体而非典型的情况下:您使用手动扩展,只运行一个实例,并且该实例将任务排入队列并(稍后)处理它。
【讨论】: