2

我正在使用python-firebase在我的堆栈中记录点击次数和其他事件数据。它工作正常,但时不时地抛出这个堆栈跟踪:

'ConnectionError(MaxRetryError("HTTPSConnectionPool(host=\'somebase.firebaseio.com\',
port=443): Max retries exceeded with url: /campaigns/79/clicked.json
(Caused by <class \'socket.error\'>: [Errno 104] Connection reset by peer)",),)'

这通常发生在负载高峰期,但我知道我没有超过开发人员计划中可用的 50 Max Connections:

Firebase 使用数据

更多数据:

点击计数更新发生在使用带有 gevent 的 Celery 的任务队列中。会不会是Gevent引起的?

更新:

另一个错误:

Task core.campaign.tasks.process_entry_click with id 
932df1ff-62a4-4d24-b491-b9b4921a2372 raised exception:
"SSLError(SSLError(SSLError('The read operation timed out',),),)"
4

1 回答 1

1

这可能发生在服务器代码推送或停机期间(记录在https://twitter.com/FirebaseStatus) - 最好捕获此类异常并在服务器再次响应时重试。

于 2013-09-26T19:32:17.623 回答