App Engine 中的 Firebase Admin SDK Java 8

Firebase Admin SDK in App Engine with Java 8

以前,Firebase Admin SDK 不会 运行 在具有自动缩放功能的 App Engine 上。可能它会创建一些线程,并且 Thread class 或类似的东西没有被列入白名单。

现在 Google 已经在 App Engine 上为我们提供了对 Java 8 的支持(并删除了白名单),这个问题会消失吗? Firebase Admin SDK 能否在具有自动缩放功能的 App Engine 上运行?

Firebase Admin SDK 仍然无法在 AppEngine 中运行 Java 8 运行time 无需手动缩放,原因如下:

  1. 在 Java 8 运行 时间可用的线程支持有一些限制。例如,任何不是使用 AppEngine 的 ThreadManager 接口创建的线程都不能调用 AppEngine API。这意味着这些线程无法进行传出网络调用。
  2. SDK 中的数据库客户端代码生成长 运行ning 线程。在 AppEngine 环境中做到这一点的唯一方法是通过后台线程支持。当部署在 AppEngine 中时,SDK 专门寻找此功能。我已经尝试 运行 放宽此要求的 SDK,但它不起作用。即使在新的 Java 8 运行time.
  3. 中,请求范围的线程似乎也不能超过请求

但是,您应该能够在 AppEngine 中使用 FirebaseAuth 接口(用于自定义令牌生成、ID 令牌验证和用户管理),而无需手动缩放。 SDK 的这一部分在请求范围的线程上支持 运行ning。