Coinbase API数据缓存优化
3 个回答
这个问题在数字货币行业中比较常见,Coinbase api有延迟,可以做本地缓存,比如使用redis,设置过期时间,大部分用户请求都可以读取缓存,用户体验会好一点,不过需要设置开关,遇到大行情的时候可以手动更新缓存。另外静态资源可以用cdn。
存储在 redis 中,设置一个合理的过期时间,如 1-5 分钟。当客户端请求时直接从缓存中读取,没有缓存时请求 Coinbase 接口。如果出现请求异常,则进行降级操作返回缓存中的数据,避免请求被阻塞。
我也有遇到过这个问题,其实不单单是这个币种的问题,可能大部分数字货币项目都有,因为CB的接口本身就存在卡顿,所以用户体验上会有很大的影响,你可以考虑使用redis一类的内存型数据库进行缓存,将近期的行情数据放入缓存中,设置一个合适的缓存过期时间,如1分钟,然后刷新,大部分请求就可以走缓存了,减少直接请求api的次数,再或者做一个本地的数据库存放冷备数据,当api出现不稳定时,自动切换到本地数据库读取数据。