0

我目前正在使用 node-telegram-bot-api 运行一个电报机器人。但是现在项目越来越大,越来越多的用户使用我的机器人。因此,当我不得不重新部署我的应用程序时,我遇到了一些困难,而许多人仍在访问。我尝试使用 pm2 运行多个集群,然后使用 pm2 reload 在零停机时间内优雅地重新启动我的应用程序。

但是后来我从电报中得到了一个错误:

error: [polling_error] {"code":"ETELEGRAM","message":"ETELEGRAM: 409 Conflict: terminated by other getUpdates request; make sure that only one bot instance is running"}

我认为电报不会在同一服务器中提供多个实例。这类问题有解决方案吗?

4

1 回答 1

1

即使您可以运行两次脚本,用户在向 bot 发送命令时也会得到两次答案。你有两种选择:

  • 升级您的资源(RAM/CPU/...)
  • 使用您的主脚本处理传入消息,创建 API 并在 API 后端执行处理。
于 2021-01-06T01:25:45.763 回答