2012-07-30 62 views
1

我正在使用PHP来处理API,该API每10秒限制一次请求。它可以一次返回的最多结果是10.使用有限请求速率的API

这意味着要获得1000个结果我需要拨打100个电话,如果一个接一个地完成一个接一个需要17分钟左右,所以这样做'在飞行中'并不是真的一个选项。

如果我需要从API获得1000行,这将是最好的方式去解决它?

有没有什么办法可以在后台获取API数据,以便当我需要信息时,它已经在我的数据库中了?该API每四周更新一次,因此只需在该时间段内同步一次。

我虽然已经使用cron作业来做到这一点,但我不知道它将如何工作,考虑脚本需要运行多长时间。

+1

cron工作将是最好的。只要cron每10分钟就能完成一项工作。工作的长度不应该成为问题。 – sean 2012-07-30 13:54:09

回答

1

使用cron作业是将API中的值存储在数据库中的好方法。您需要为API和本地数据库使用更新的时间字段。检查API的最后一次记录更新的日期是否大于本地数据库中最后一次记录更新的日期。如果是,请获取新数据。

如果你想对本地数据库执行同样的过程到服务器,你可以。这是同步项目流程并减少API请求的常用操作。