为什么我的Github Webhook总是超时?

8
We couldn’t deliver this payload: Service Timeout

5分钟前,我成功地向我的服务器发送了webhook,但现在我不断遇到超时错误。我尝试删除webhook并重新添加它,更改它所指向的URL,但都没有效果。

我是否发送太多推送导致出现问题,还是GitHub的webhook服务出现故障?


你能展示一下你尝试过的URL端点的格式吗? - Ashish Karpe
你的服务器在AWS或其他云平台上吗? - Ashish Karpe
2个回答

4

GitHub的Webhooks设置了10秒超时时间,这是我遇到的问题。请参见此处的文档


你有做任何事情来避免那个10秒的超时吗? - AjCodez
加快我的端上的处理速度。那是你当时所能做的全部。我不知道他们是否有任何改进。 - ajon
2
说句实话,加速处理的最佳方式之一是通过异步计算。无论长时间任务是什么,都将它们排队并返回响应到 GitHub。 - ajon

3

除非GitHub出现某种错误(目前看起来不是这种情况,可以查看他们的系统状态"历史记录"),否则您可能需要检查接收webhook有效负载的程序。

请参见Supybot-plugins 225中的类似问题:

我联系了GitHub支持团队,其中一名员工一直在为我解决此问题。以下是他对该问题的部分评论:

我刚刚尝试从我们的一台机器手动发出请求,这个请求没有出现任何错误(请参阅下面的 curl -v 输出)。
但是,我注意到请求的处理时间非常长 — 超过15秒(2个字节的数据)。

将负载的监听和接收与其处理分离通常是正确的方法,正如我在“Perl Script slow over Tomcat 6.0 and generates service time out”中建议的那样。第一部分应尽可能快。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接