【问题标题】:Can I use Laravel 4 Queues to process print-jobs on Windows?我可以使用 Laravel 4 队列在 Windows 上处理打印作业吗?
【发布时间】:2013-05-11 08:05:18
【问题描述】:

这个问题是我之前提出的关于通过 Laravel 的 Windows 上的 Word 打印文档的问题的延续。

我的问题是我不想在 POST 请求中启动必要的打印任务,因为这不会显示任务的反馈,并且只有在任务完成后才会响应。

例如,如果我调用了POST /pledge/submit 路由,我不想在该路由的同一请求中调用必要的打印任务。

现在,我看到 Laravel 4 有一个名为 Queues 的工具,(我想)它可以让我在后台处理这些任务,并将它们推迟到以后。

通过阅读文档,我发现它支持四种不同的驱动程序,其中之一是sync

问题:我可以使用此驱动程序在队列中创建新的打印作业,并让它们由外部应用程序(例如在 Delphi 中创建的应用程序)执行吗?该应用程序会定期检查队列中是否有项目,然后执行它们(当然,删除它们)。

我只是想找到发布文档的最佳方式,而最终用户无需在打印过程中等待页面响应。此外,我对 PHP 中的队列不熟悉,并且不熟悉它们的工作方式(就详细的流程而言)。如果有人也能解释一下,我将不胜感激。

【问题讨论】:

    标签: php ms-word queue laravel laravel-4


    【解决方案1】:

    队列系统不适用于开箱即用的 Delphi 程序 - 您需要进行一些修改。

    相反,最简单的方法是在数据库中创建自己的“表”,称为“pending_print_jobs”。

    当用户想要打印作业 'x' - 你让 PHP 将打印作业保存在 'pending_print_jobs' 表中,其中包含您需要的所有详细信息(例如要打印的文件、执行此操作的用户等) .

    然后您将让您的外部应用程序(即您的 Delphi 程序)定期检查数据库中的“pending_print_jobs”表。如果它找到任何记录 - 它可以处理它们 - 并打印文件。

    【讨论】:

    • 我一开始确实想到了这个。老实说,我认为这是目前最可行的选择。
    猜你喜欢
    • 2018-07-19
    • 2017-09-07
    • 2016-03-04
    • 2011-04-06
    • 2016-08-14
    • 2011-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多