- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想并行化一个已经由 Gearman 和 PHP 处理的处理作业。我不明白多次调用 doBackground()
的区别:
$gmclient->doBackground("reverse", "Hello!");
$gmclient->doBackground("reverse", "Hello!");
$gmclient->doBackground("reverse", "Hello!");
我有足够的注册 worker ,在他们自己的 PID 上运行。所以这 3 个作业由 3 个不同的 worker 并行运行。
或者使用 addTask()
,如文档中所述,明确用于并行化。
$gmc->addTask("reverse", "Hello World!", null, "1");
$gmc->addTask("reverse", "!dlroW olleH", null, "2");
$gmc->addTask("reverse", "!dlroW olleH", null, "3");
$gmc->runTasks()
谢谢你的帮助
最佳答案
区别在于 runTasks()
将阻塞,直到所有通过 addTask()
添加的任务完成。当所有三个任务都完成时,您的最后一个示例将完成(添加一个 sleep()
调用以在实践中查看它),而第一个示例只会将任务移交给 gearmand 然后继续运行脚本。
使用 addTask()
将独立的任务(但可能相关)分组,可以轻松地执行一组任务,然后再执行假设所有先前任务都已完成的操作。一个例子可能是调整 4 种不同分辨率的图像,然后在所有四个任务完成后将图像设置为事件图像。使用 runTasks()
这很容易通过四个 addTask()
调用实现,一个 runTasks()
然后更改图像的状态,同时使用 doBackground,您必须轮询已提交给 gearmand 的任务的状态,以了解它们何时完成。
关于php - 与 Gearman 并行化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10397923/
有人可以指导我在出现异常时 Gearman 如何重试 抛出或发生错误时? 我在 Django 应用程序中使用 python gearman 客户端,我的工作人员是 作为 Django 命令启动。我从这
是否可以从本地系统调用远程 gearman 工作人员?我尝试使用我的远程 Azure 服务器 IP 进行调用: 本地系统上的客户端: gm_client = gearman.GearmanClient
有没有办法从 Gearman 作业服务器中删除所有 Gearman 作业?我有一个在后台运行 Gearman 作业的 PHP 应用程序。对于我的单元测试,我需要确保 a) 没有工作在等待执行它的工作人
本文实例讲述了gearman+mysql方式实现持久化操作。分享给大家供大家参考,具体如下: 1、为什么要持久化? gearman的job server中的工作队列存储在内存中,一旦服务器有未处
我只是设法在我本地的 Ubuntu 测试环境中安装了 gearman。我想知道我是否可以在开发阶段以任何方式在同一台计算机上同时运行 worker 和客户端? 最佳答案 我自己没试过;但是由于 Gea
首先,我知道 this题: Gearman: Sending data from a background worker to the client 我想知道的是,Gearman 还是这样吗?我计划将
我目前正在测试Gearman,以处理来自Web前端的并行任务/请求,Gearman cleint通过Ajax接收带有post params的请求,然后创建任务并将其发送给Gearman Worker。
我无法找到有关带有“--status”选项的 gearadmin 命令行工具含义的任何文档。工作函数名称后面的三个数字的含义是什么? 例如,然后我运行以下命令: gearadmin --status
我目前正在开发一个使用 Gearman 进行异步数据处理的系统。 我可以连接到 Gearman 服务器来检查当前的工作人员数量和各种队列的大小,这对于确定处理是否正在备份等非常有用,但我还想要一些有关
我有一些在 php 上实现的 Gearman 工作人员。这些工作人员的每个任务都应该在自己的事务中执行。为了让这些工作人员访问我的 MySQL 数据库,我需要像连接池这样的东西。您能否为此提出一些建议
我正在尝试将 gearman 用于后台任务并从 worker 获取数据进度。在文档中我看到了方法:send_job_data 和 send_job_status,但是后台优先方法不起作用(我没有在 j
我有一个简单的 python 脚本来发送 gearman 任务: 客户: # "source" is a simple tuple client = GearmanCl
我正在尝试使用 Python gearman 模块进行字符串反转的各种基本示例我的本地主机已在端口 4730 上使用 IIS 设置但是我收到错误 raise UnknownCommandError(m
我在我的项目中使用 Gearman Job 服务器。我使用 'gearman-ruby' gem 。应用程序中有一个任务队列。一项任务有 4 个部分。 适本地,我有 4 个 worker 来解决这部分
我试图理解 Gearman,但直到现在我还无法弄清楚任务和工作之间的区别。 我正在尝试创建一个客户端,它将定期(每 10 分钟)解析一个 XML 页面。哪种方法最好? 最佳答案 手册offers a
我有一个 Gearman 服务器运行一个需要几分钟才能完成的进程。我正在运行一个进度条来显示完成情况,并尝试使用 Gearman PHP 扩展和 jobStatus() 函数获取进度条的百分比。 由于
描述 正在尝试安装 laelaps/symfony-gearman-bundle通过 composer require laelaps/symfony-gearman-bundle 有一些错误,我很难
我有一个简单的 Gearman 客户端和工作器。我在我的 Ubuntu 桌面上同时运行。我已经安装了 gearman-beta pecl 软件包和来自 synaptic 的 Gearman 版本。 我
研究 PHP/Gearman。我试图了解 Gearman 服务器/进程如何确定什么构成“有效”客户端。 在我看过的文档中,文档显示了许多连接到 Gearman 服务器的客户端。但是,我没有找到任何描述
我是 Gearman 的新手。我对优化的 Gearman 用法有以下疑问: 1) 我认为 worker 期望工作是一个“字符串”。我可以将数组或哈希作为作业发送给工作人员吗?如果不是,JSON 是发送
我是一名优秀的程序员,十分优秀!