我在我的项目中使用 Gearman Job 服务器。我使用“gearman-ruby”宝石。应用程序中有一个任务队列。一项任务有 4 个部分。
适当地,我有 4 名工人来解决这部分任务。
我的系统在没有 Gearman 的情况下在 10 分钟内解决了 1 个任务。但是当我使用 gearman 时,解决 10 个任务的时间是 2-3 小时 :(
Gearman 队列位于 mysql 中。队列溢出。
Cron 启动设置任务的客户端。一项任务 - 解析一页。第一名工人 - 获取页面(初始化),第二名 - 获取照片(图像),第三名 - 获取评论(文本),第四名 - 获取特征(文本)。第一个工作人员获取页面,其他工作人员从该页面解析不同的数据。
齿轮人配置:
$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
请帮我设置齿轮员以加快工作速度