我在 Heroku(免费层)上运行 Flask 应用程序,在使用 apply_async 调度任务时遇到了一些麻烦。如果我安排了两个以上的任务,我会得到一个很长的堆栈跟踪,但有以下例外:
AccessRefused(403, u"ACCESS_REFUSED - 用户 'rthtwchf' 拒绝访问虚拟主机 'rthtwchf' 中的交换 'celeryresults'", (40, 10), 'Exchange.declare')
奇怪的是前两个任务(在重新启动我的所有进程之前)似乎总是毫无问题地完成。
一点点搜索引擎侦查让我找到了https://stackoverflow.com/questions/21071906/celery-cannot-connect-remote-worker-with-new-username这使它看起来像一个权限问题,但我会假设 Heroku CloudAMPQ 服务已经解决了这个问题。
任何建议表示赞赏!