每隔X分钟将JSON输出插入数据库?

时间:2013-09-27 08:26:21

标签: php sql crontab

虽然我知道如何做到这一点,但我正在思考的方式似乎并不是“最好的”,使用PHP。

我有一个API(本地),它在我的数据库中产生了我想要的大量数据的JSON输出,但是我只想每隔5分钟更新一次。

我这样做的方式是:

  1. 解析JSON输出
  2. 检查回复(状态=真/假)
  3. 如果为true,则循环访问JSON并将其插入数据库
  4. 使用cron作业随时执行
  5. 但是我看到了一些问题。

    • 什么会阻止某人在浏览器中加载该页面并进行更新?
    • 当JSON状态输出为false时,如何处理错误或收到通知?
    • 肯定是为每个JSON“循环”运行插入查询效率不高?

    我对这里的所有选项持开放态度 - 寻找最有效/安全/可重复使用的选项....它不一定是PHP,但我最熟悉它。

1 个答案:

答案 0 :(得分:0)

api文件(返回你的JSON)是否完全有必要驻留在public_html目录中?与此文件交互的文件也是如此。 您可以使用.htaccess重写规则阻止对文件的访问(如果您不使用Apache,则可以使用类似的东西)。

是每个循环运行insert效率低下。您可以使用INSERT INTO ... VALUES语法创建更大的批量插入。如果您的数据集很小,您可以只做一个大insert