From what I can see Gearman does not support scheduled jobs or delayed jobs. I was thinking that perhaps the scheduled job could be queued in at
first and then added to the Gearman queue after the at
time period has expired.
at
tasks are persistent as they are written as files to a directory in the spool directory of the server. So the only bottle neck would potentially be a simple script to add the task to the Gearman queue because at
can't be distributed across servers. Passing it to Gearman to process the actual job means I can get proper job logging etc.
Is this the best way to approach this and do you have any alternative ideas?
The reason I have opted for Gearman over other queue solutions is that it has a PHP extension.
The code I am writing is used to maintain a queue of emails that need to be sent out. So I may specify that I want to send an email to example@example.org at 9.50 on Friday for example.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…