【问题标题】:Zend MVC flush during executionZend MVC 在执行期间刷新
【发布时间】:2011-04-07 13:27:38
【问题描述】:

我试图弄清楚如何模仿 Bugzilla 健全性检查输出,其中 Bugzilla 正在检查数据库中的各种引用以查找逻辑缺陷。每次检查后,结果都会刷新到客户端。 (全套测试可能需要一段时间)。结果,还有一个链接可以触发对出现的任何问题的“修复”。这对于在整个(慢速)测试集完成之前获取很有用。

当标头已经发送时,处理错误将是一个问题,但我在这里的假设是在第一次数据库检查完成后,刷新结果是安全的。我们的想法是将此作为仅限管理员使用的功能,并且在第一次检查完成后的任何错误都将有助于按照它在任何情况下发生的顺序输出,以解决数据库的任何问题。

如何使用 Zend MVC 完成此任务?

【问题讨论】:

    标签: php flush zend-framework-mvc


    【解决方案1】:

    我试图弄清楚如何模仿 Bugzilla 健全性检查输出,其中 Bugzilla 正在检查数据库中的各种引用以查找逻辑缺陷

    Bugzilla 使用一个非标准 MIME 扩展,称为multipart/x-mixed-replace。并非所有客户端都支持它,尤其是 IE。

    如何使用 Zend MVC 完成此任务?

    不忽略框架的大部分工具,不。特别是,您需要自己推出标题和内容,避免使用自动助手。

    这听起来像是Gearman 的工作。您可以将长时间运行的进程设置为工作人员,并拥有它continually send status information 和partial data。然后,您可以consume the status and partial data 并通过简单的 ajax 轮询向用户提供最新进展,这应该适合您现有的代码。

    或者您可以直接fire and forget 告诉客户稍后再回来查看最终处理结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-10
      • 2011-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多