【问题标题】:GCP Pubsub Nodejs client promises hang, client freezes, no errorsGCP Pubsub Nodejs 客户端承诺挂起,客户端冻结,没有错误
【发布时间】:2021-09-25 04:54:17
【问题描述】:

使用 Google 的 Pub/Sub Node 客户端库针对您的项目,Promise 挂起且没有错误。

例子:

const { PubSub } = require("@google-cloud/pubsub");

async function start() {
  const pubsubClient = new PubSub({ projectId: "my-project-id" });

  try {
    const [topics] = await pubsubClient.getTopics();
    console.log(topics);
  } catch (error) {
    console.error(error);
  }
}
start().catch(console.error);

不会返回错误,也不会显示任何进度。最终客户端在 10 分钟后超时。不会返回任何主题。发布到主题等也是如此。

【问题讨论】:

    标签: node.js google-cloud-pubsub


    【解决方案1】:

    如果您使用模拟器 pubsub 进行本地开发,则您设置了 PUBSUB_EMULATOR_HOST 变量。由于某种原因,它导致了这个问题。使用 unset PUBSUB_EMULATOR_HOST 将其从您的环境中删除,或从您的 .env 文件中删除它并重新启动服务器。

    你可以检查它是否在你的shell中设置了printenv(或者run exec from the node app来检查)

    有一个已知问题和相关的 Github 问题,所以如果你遇到这个答案并且它有帮助,请随时在此处让维护人员知道: https://github.com/googleapis/nodejs-pubsub/issues/339 或在这里: https://github.com/googleapis/gax-nodejs/issues/208 因为它似乎不会影响很多人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 2012-07-04
      • 2015-08-20
      • 2017-09-04
      • 2019-01-23
      • 1970-01-01
      • 2013-01-14
      • 1970-01-01
      相关资源
      最近更新 更多