我们正在尝试编写一个 webhook,如果一个或多个资源变为“非活动”,我们会在其中通知订阅者有关其所有资源的详细信息。
由于不同的订阅者可以拥有不同数量的资源,因此POST
对 a 的 webhook 请求的有效负载大小URL
会有所不同。
样本有效载荷 -
{
"id1": "inactive",
"id2": "inactive",
"id5": "inactive"
...
}
订阅者可以拥有的资源数量没有限制,因此可以高达 50,000 或更多。
由于在某些情况下有效载荷可能更高,因此出现的问题是 -
- 如果有效负载大小很大,Webhook 的生产者可能需要一些时间
- 接收 webhook 的消费者(端点)可能无法接受如此高的负载
关于以下内容的一些输入将有所帮助:
- 如何处理这种情况?可以通过 webhook 允许的有效负载的正确限制是多少,比如 5MB?Github为 webhook 定义了 25MB 的最大上限。怎么想出这样一个数字?
- 如果超出负载限制会怎样?
- Skinny Payload 可以在这里使用吗?就像一个全局状态指示一切是否正常,用户可以使用它执行 PULL(
GET
请求)来获取整个数据集。但是在这里,用户将需要接收 webhook,然后如果情况不正常,则需要再次执行一次请求。[参考:http://resthooks.org/docs/performance/]
PS:如果这不是我问这个问题的正确方式,请原谅我。长时间后使用堆栈溢出。