我在工作中遇到一个场景,我们需要计算从学生家庭位置到他们指定校园的估计距离。我可以使用 Google 距离矩阵 API 轻松完成此操作,只需提供两个邮政编码,它就会返回距离和估计的行程持续时间。
我有一份周围学生的列表,我需要 ping 这个 API,并将结果弹出到数据表中。我已经非常轻松地完成了这个工作,与大约 20 名学生进行了测试,效果非常好。
我的问题是,这对 4200 名学生来说如何运作?我真的要创建一个巨大的 foreach 循环,向此 api 发送 4200 个 http 请求吗?谷歌有多少能力来处理这个问题?我需要分批做吗?有没有一种“正确”的方式从他们那里获取这么多数据?
我还没有尝试过,因为我的问题是关于我是否“应该”做某事,或者对于这个特定的 API 是否有更好的方法我不知道。
1。确保您可以处理距离矩阵 API 的定价
您可以通过两种方式使用距离矩阵 API 进行计费,这些方式是:
如果您认为自己可以管理成本,那么您需要考虑的另一件事是,
2。使用限制
文档这样说,
虽然没有每天元素的最大数量 (EPD),但 距离矩阵 API 有以下使用限制:
- 每个请求最多 25 个出发地或 25 个目的地
- 每个服务器端请求最多 100 个元素。
- 每个客户端请求最多 100 个元素。
- 60,000 EPM(每分钟元素),计算为客户端和服务器端查询的总和。
并且由于您很可能会运行 for 循环,因此请确保您已设置适当的配额或限制,以防您的 for 循环变得疯狂并且您会收到意外费用。请参阅:https://cloud.google.com/apis/docs/capping-api-usage
最后但并非最不重要的一点,
3.确保您遵守距离矩阵 API 或 Google 地图 API 的一般使用条款
如果您需要进一步的支持,我建议您提交支持案例:https://developers.google.com/maps/support#contact-maps-support
我希望这有帮助!