首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >后台PHP worker

后台PHP worker
EN

Stack Overflow用户
提问于 2011-11-21 05:38:27
回答 2查看 240关注 0票数 0

我有一个脚本,需要一段时间来处理,它必须从数据库中取东西,并将数据传输到其他服务器。

目前,我有它做后,表单立即提交,它需要的时间,它需要传输的数据,说它已经发送。

我想知道是不是无论如何都要做,这样它就不会在客户面前做这个过程了?

我不想要一个cron,因为它需要同时发送,而不是与客户端一起加载。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-21 05:49:28

有几个选项:

  1. Exec执行数据库工作的PHP脚本,但不要等待exec的输出。在这一点上要非常小心(),不要盲目地接受用户的任何输入参数,而不对它们进行清理。我只提到这是一个选项,我永远不会自己做。
  2. 让你的数据库更新脚本一直在后台运行,轮询触发其更新的事情发生。例如,它可以检查/tmp/run.txt是否存在,如果存在,将启动DB更新。然后,您可以从您的网页创建run.txt并返回,而无需等待response.
  3. Create您的数据库更新脚本作为守护进程。
票数 1
EN

Stack Overflow用户

发布于 2011-11-21 05:46:26

下面是一些你可以看看的东西:

您正在传输多少数据,通过传输,它更像是仅复制并粘贴数据,还是将数据从数据库插入目标服务器,然后从源服务器删除数据?

您可以尝试分析您的SQL,看看是否有优化的空间。

然后你也可以检查你的php代码,看看是否有任何东西,甚至是最轻微的,可能有助于更快地执行必要的任务。

源和目标数据库服务器位于何处(就网络和地理位置而言,如果您碰巧知道的话),以及源和目标服务器通过网络/网络通信的速度有多快?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8204951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档