Skip to content
🔗 分享本题
查看我的学习进度 →

26 模块 Q24 教学图:编写企业 API 同步器时,如何处理分页、限流和部分失败?

🧠 图解记忆:使用服务端 cursor,不假设页码在同步期间稳定;点击图片可查看原图。

💡 答案要点

一个合格方案应包含:

  • 使用服务端 cursor,不假设页码在同步期间稳定;
  • 保存已提交 checkpoint,进程重启后可以继续;
  • 对超时、429 和可重试 5xx 使用带 jitter 的退避,并尊重 Retry-After
  • 限制并发和内存,不一次加载全部对象;
  • schema 校验失败进入隔离区,不能让一个坏对象丢掉整页;
  • upsert 幂等,并记录 source version、同步批次和 lineage;
  • token 刷新、权限变化和删除事件有独立处理;
  • 测试空页、重复页、cursor 失效、限流、半页失败和重启。

如果面试要求现场编码,应先实现正确的串行版本和清晰接口,再在有数据支持时增加受控并发。