Coinbase API并发请求处理

云淡风轻云淡风轻12月11日1857

使用Coinbase API时,并发请求会出现错误?如何更好的进行并发?

4 个回答

OnChainShark
OnChainShark回答于 12 月 11 日
最佳答案

Coinbase API并发请求失败,原因:接口存在频率限制,并发请求过多导致出现熔断机制报错。

解决办法:1)对并发请求数量进行控制。通过线程池或者异步框架控制并发请求数量,保证每条请求之间有一定的时间间隔。

2)检查接口状态码。如果出现429错误,说明并发量过大,需要适当降低并发量。

3)合理利用缓存。如行情数据,不需要实时获取,可以每隔一段时间更新一次。

4)查看API文档中提供的速率限制参数,在合理范围内进行并发操作,不要盲目提高并发量。

区块守夜人
区块守夜人回答于 12 月 12 日

Coinbase的API出现错误大部分都是因为被限流了,官方默认是几十秒一次,发的太频繁就会熔断。

解决办法很简单:增加sleep间隔。举个例子,5个线程,每次请求间隔1s,就跑过了限流。

采用队列管理,将请求放在队列中按一定频率的获取请求并发送,保证效率并且不被限制IP。

另外建议使用重试机制,当发生429时重试,但是不要无限期重试,限制一下次数即可。

币潮破影者
币潮破影者回答于 12 月 12 日

Coinbase API在并发的情况下是很坑的,主要存在限流和连接冲突的状况。解决的方法也很简单: 1. 在请求的时候,维护一个请求队列,限制请求的并发数量;2. 遇到429的时候重试;3. 超过一定时间没有返回则放弃本次请求(超时)。

Mark Rober
Mark Rober回答于 12 月 14 日

Coinbase API并发请求报错,大部分原因是并发数超频造成的,可以将请求改为异步或者加入队列限制并发数,不要一口气都发送过去,合理设置重试策略,在限流中等待一段时间再进行尝试,如果数据量真的很大可以联系官方申请加大频率或是使用多个 Key 轮询。

您的答案