我正在尝试Source
使用 Python Dataflow SDK 编写自定义,以从 REST 端点并行读取 JSON 数据。
例如,对于给定的一组 ID,我需要从以下位置检索数据:
https://foo.com/api/results/1
https://foo.com/api/results/2
...
https://foo.com/api/results/{maxID}
我需要的关键功能是监控和速率限制:即使我需要并行性(基于线程/进程或使用异步/协程),我也需要确保我的工作对 API 端点保持“礼貌”——有效避免非自愿DDoS。
使用psq,我应该能够实现某种速率限制机制,但是我将失去使用数据流服务监控来监控进度和 ETA 的能力
看起来,虽然它们可以很好地协同工作,但 Google Cloud Dataflow 和 Google Cloud Pub/Sub(使用 Google Stackdriver Monitoring)之间的监控并不统一
我应该如何构建一个实现速率限制并具有基于 Web 的监控的大规模并行 HTTP 使用者工作流?