调用接口超时怎么办,b站服务调用超时是怎么回事

b站服务调用超时是怎么回事
【调用接口超时怎么办,b站服务调用超时是怎么回事】
b站服务调用超时的原因是B站系统出现故障 , 在维修当中 。建议用户等到维修完毕后再进行登录 。哔哩哔哩 , 英文名称bilibili , 简称B站 , 现为中国年轻世代高度聚集的文化社区和视频平台 。B站早期是一个ACG(动画、漫画、游戏)内容创作与分享的视频网站 。经过十年多的发展 , 围绕用户、创作者和内容 , 构建了一个源源不断产生优质内容的生态系统 。bilibili拥有动画、番剧、国创、音乐、舞蹈、游戏、知识、生活、娱乐、鬼畜、时尚、放映厅等15个内容分区 , 生活、娱乐、游戏、动漫、科技是B站主要的内容品类 , 并开设直播、游戏中心、周边等业务板块 。

调用接口超时怎么办,b站服务调用超时是怎么回事

文章插图
调用接口超时怎么办接囗超时解决办法:
1.增加超时时间
假设A系统有个方法methodA , 会调用B系统的methodB这个http接口 , 如果mehodA不追求超快的响应速度 , 那么你在调用methodB这个http接口时 , 可以增长超时时间 , 例如10秒超时 。因为经常在某些时刻 , 由于网络原因或者系统原因 , 调用method会超时的 。
2.尝试多调用一次
如果第一次调用methodB超时了 , 那么你可以尝试多调用一次 。当然前提是 , methodA不追求超快的响应时间 。注意:调用多次不代表重复调用 制造脏数据
3.使用待处理队列
如果methodA需要很快的响应速度 , 那么当调用methodB接口超时时 , 可以使用一个队列存储本次失败的记录 , 然后使用一个job每隔一段时间去扫这个队列 , 看看是否有待处理的数据 。
备注:如果对方系统挂掉了 , 使用待处理队列的方式 , 比较合适 。
4.回滚数据
catch这个超时异常 , 然后记录日志后 , 抛出这个异常 , 并把之前的数据回滚 。让对方的系统重新调用 。
备注:宁愿没有数据 , 也不要存储脏数据 。
5.使用异步机制
如果你的业务方法中 , 需要调用对方的http接口 , 如果这个http接口不影响主流程的 , 那么可以使用一个线程 , 异步调用对方的http接口 , 并把超时时间设置长一些 。由于使用了异步 , 主流程会立刻继续走的 。
6.使用缓存机制
使用一台缓存服务器 , 每次调用先调用我们的缓存服务器里面的数据 , 来实现快速调用解决超时问题 。

    推荐阅读