下图是一个基础流程
在这里插入图片描述
写出业务没问题,其实业务在99%的时间都是ok的,但就是那1%的错误非常的关键
非常需要关注的点是authoization_code的刷新,因为它的过期时间是1个小时,不刷新会导致接口重复调用次数过多,并且大并发的情况下,缓存穿透会导致很多问题。
解决方案
有一个专门监听redis过期通知的项目,然后将通知放到队列中,最后放到kafka队列中去处理。因为是1个小时过期,那么我在50分的时候过期一个数据,通知去刷新数据
redis,最好aof+rdb去做
然后是错误处理,当刷新出错或者接口出错,应该去解决,因为不想增加系统的复杂性,所以开始选的是kafka,那么错误信息也可以扔kafka,扔到另一个组进行解决。然后进行消息处理

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐