30个版本 (15个重大更新)
0.16.0-rc.1 | 2024年2月21日 |
---|---|
0.15.4 | 2023年9月10日 |
0.15.2 | 2023年4月27日 |
0.15.1 | 2023年2月26日 |
0.2.1 | 2020年11月10日 |
979 在 网页开发
3,374 每月下载量
在 11 个库中(直接使用2个)
15KB
196 行
twilight-gateway-queue
网关 IDENTIFY
命令的限流功能。
Discord允许机器人的分片每5秒发送一定数量的IDENTIFY
命令,每天限制在1000到2000个命令之间,并且超过此限制将使所有分片会话无效。每个识别间隔可以由分片ID对max_concurrency
取模得到,这样一组分片称为一个桶。见 Discord 文档/分片。
为了协调这一点,一个 Queue
应该处理每个识别请求,并且分片应该等待其信号才能继续,否则会重试。提供的 InMemoryQueue
永远不会失败或取消请求,因此是自定义实现的好起点。它也可以组合以支持多个进程;请参阅 gateway-queue-http
和 gateway-queue
以获取HTTP客户端和服务器实现。
依赖关系
~2.6–4MB
~69K SLoC