- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在我的项目中使用 Gearman Job 服务器。我使用 'gearman-ruby' gem 。应用程序中有一个任务队列。一项任务有 4 个部分。
适本地,我有 4 个 worker 来解决这部分任务。
我的系统在没有 gearman 的情况下在 10 分钟内解决了 1 个任务。但是当我使用 gearman 时,解决 10 个任务的时间是 2-3 小时:(
Gearman 队列位于 mysql 中。队列溢出。
Cron 启动设置任务的客户端。一项任务 - 解析一页。第一个 worker - 获取页面(初始化),第二个 - 获取照片(图像),第三个 - 获取评论(文本),第四个 - 获取特征(文本)。第一个工作人员获取页面,其他工作人员从该页面解析不同的数据。
齿轮配置:
$cat /etc/sysconfig/gearmand
## Settings for gearmand
OPTIONS="--listen=127.0.0.1
--job-retries=3 \
--log-file=/var/log/gearman.log \
--queue-type=MySQL \
--mysql-host=localhost \
--mysql-port=3306 \
--mysql-db=gearman \
--mysql-table=queue"
$gearmand --version
gearmand 0.35
请帮我设置 gearman 以进行速度工作
最佳答案
OPTIONS="--listen=127.0.0.1
--job-retries=3 \
--log-file=/var/log/gearman.log \
--threads=12"
З.我使用“--threads=threds_count”参数为 gearman job-server 添加了更多线程。
现在我的系统运行又快又稳定! :)
如果您使用持久性存储并且您的队列溢出:您可以定期运行脚本来清理 gearman_queue。我通过定期调用 sh 脚本解决了这个问题(为此我使用 cron):
# stop gearman
sudo /etc/init.d/gearman stop
# delete tasks from DB
mysql -Bse 'DELETE FROM queue' gearman -u root
# start gearmand back
sudo /etc/init.d/gearman start
echo '*** gearman queue cleaned. ***'
关于ruby - gearman 任务队列因已完成的任务而溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15481150/
有人可以指导我在出现异常时 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 是发送
我是一名优秀的程序员,十分优秀!