Gearman Worker自恢复方案

本文探讨了在使用Gearman时如何控制Worker节点的重启与退出。提出了五种不同的方案,包括手动关闭、单任务结束后的退出或重启、定时检查配置文件、客户端发送高优先级请求及单独建立通信机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Gearman的worker节点注册任务到server后,启动工作循环,正常情况下,该循环不会退出。有些情况我们希望worker可以在需要的时候断开,亦或者重新启动worker节点,方案有以下几种:

1、手动关闭
    在需要的时候手动关闭woker进程并重新启动,在分布式环境下,节点过多时基本不可行

2、单任务结束后退出或重启
    通常worker建立后都不止为了一个任务,频繁退出启动不可行

3、定时检查配置文件
    worker通过定时检查配置决定是否退出或重启,此法在部分情况下可行,若对系统实时性要求较高,或配置文件更新频繁,则会导致worker频繁重启

4、client端发送优先级高的退出或重启请求
    将退出或重启请求作为Gearman job发送给worker处理,并将任务设为高优先级,worker根据接收到的任务做处理。此方案针对woker节点所处理的任务不同时可行,由于gearman server在调度任务时选择一个节点进行处理,因而在多个节点处理同一任务时难以控制要退出或重启的worker节点

5、单独建立通信,利用守护进程或线程执行
    为每个worker和server配备一个守护进程,worker的守护进程可实现为RPC server,利用Gearman admin配合集群监控实现对所有worker的管理

转载于:https://my.oschina.net/vincentwy/blog/137862

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值