面向弱网和离线场景应如何设计网络请求与多级缓存策略
简答题中等946 次浏览
参考答案与解析
# 核心结论
弱网和离线设计应围绕“优先交付关键数据、在允许范围内复用旧数据、限制失败放大、网络恢复后保持一致”展开。缓存不能采用全局统一时长,而要按数据的新鲜度、可变性、敏感性、可替代性和更新成本分类。整体可分为内存缓存、持久化缓存、协议缓存和服务端数据源;读取时确定缓存键、新鲜度和降级顺序,写入时处理幂等、重放、冲突与用户反馈。重试必须有条件、次数上限、指数退避和随机抖动,不能对所有错误无限重试。
# 底层机制
网络耗时可能包括域名解析、连接建立、安全握手、服务器排队与处理、首字节等待和内容传输。连接复用、多路复用与压缩只能降低其中部分成本,无法消除高延迟、丢包或服务端慢。缓存命中可以跳过部分链路,但必须判断内容是
