#!/usr/bin/python import gearman def check_request_status(job_request): if job_request.complete: print "Job %s finished! Result: %s - %s" % (job_request.job.unique, job_request.state, job_request.result) elif job_request.timed_out: print "Job %s timed out!" % job_request.unique elif job_request.state == JOB_UNKNOWN: print "Job %s connection failed!" % job_request.unique def main(): client = gearman.GearmanClient(['localhost:4730', 'otherhost:4730']) try: completed_job_request = client.submit_job("ToUpper", "arbitrary binary data") check_request_status(completed_job_request) except Exception as e: print type(e) try: completed_job_request = client.submit_job("ToUpperTimeOut5", "arbitrary binary data") check_request_status(completed_job_request) except Exception as e: print type(e) try: completed_job_request = client.submit_job("ToUpperTimeOut20", "arbitrary binary data") check_request_status(completed_job_request) except Exception as e: print type(e) try: completed_job_request = client.submit_job("SysInfo", "") check_request_status(completed_job_request) except Exception as e: print type(e) try: completed_job_request = client.submit_job("MemInfo", "") check_request_status(completed_job_request) except Exception as e: print type(e) if __name__ == '__main__': main()