{ "info": { "author": "Chris Petersen", "author_email": "geek@ex-nerd.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Utilities" ], "description": "===================\nGearman Task Server\n===================\n\n``gmtasks`` contains a simple multiprocessing server for Gearman workers,\ndesigned for ease of configuration and maximum availability. It includes a\ntask wrapper class that traps any interrupts or exceptions that might be thrown\nby your task methods, and attempts to make sure that the affected job is\nre-inserted into the queue (which is not the default behavior if the worker\nscript exits abnormally)\n\nPlease see the `full documentation `_ for\nmore detailed information.\n\nSample usage\n~~~~~~~~~~~~\n\n::\n\n from multiprocessing import freeze_support\n from gmtasks.jsonclass import GearmanWorker\n from gmtasks import GearmanTaskServer, Task\n\n # Jobs\n def job1(worker, job):\n return job.data['string1']\n def job2(worker, job):\n return job.data['string2']\n def job3(worker, job):\n return job.data['string3']\n\n # Main loop\n if __name__ == '__main__':\n # Need this to run in Windows\n freeze_support()\n # Import all of the jobs we handle\n tasks = [\n Task('job1', job1),\n {'task': 'job2', 'callback': job2},\n ['job3', job3],\n ]\n # Initialize the server\n server = GearmanTaskServer(\n host_list = ['localhost:4730'],\n tasks = tasks,\n max_workers = None, # Defaults to multiprocessing.cpu_count()\n id_prefix = 'myworker.',\n worker_class = GearmanWorker,\n use_sighandler = True, # SIGINT and SIGTERM send KeyboardInterrupt\n verbose = True, # log.info() and log.error() messages\n )\n # Run the loop\n server.serve_forever()\n\nDownload\n~~~~~~~~\n\n* https://github.com/ex-nerd/gmtasks\n* http://pypi.python.org/pypi/gmtasks/", "description_content_type": null, "docs_url": "https://pythonhosted.org/gmtasks/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ex-nerd/gmtasks", "keywords": null, "license": "Modified BSD", "maintainer": null, "maintainer_email": null, "name": "gmtasks", "package_url": "https://pypi.org/project/gmtasks/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/gmtasks/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/ex-nerd/gmtasks" }, "release_url": "https://pypi.org/project/gmtasks/0.4/", "requires_dist": null, "requires_python": null, "summary": "Gearman Task Server", "version": "0.4" }, "last_serial": 2650286, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "d6f36614e02533e015a6afe9fe61e112", "sha256": "d62ad6c778f76dee7df0d7f7a47f48db31ca76720194b423524b5c01aaf5d345" }, "downloads": -1, "filename": "gmtasks-0.1.tar.gz", "has_sig": false, "md5_digest": "d6f36614e02533e015a6afe9fe61e112", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2765, "upload_time": "2012-01-18T01:56:43", "url": "https://files.pythonhosted.org/packages/2e/bd/6cf22c5e279f94f4d2059275cd1232944c575b7c8d0d419636b5139d9649/gmtasks-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "98dd31a44a00865e9d515a3c759fe6b7", "sha256": "bfb4e47d7fc83f127ba3f7ac0d712ba80e274502e82198a5bfab686497cafd92" }, "downloads": -1, "filename": "gmtasks-0.1.1.tar.gz", "has_sig": false, "md5_digest": "98dd31a44a00865e9d515a3c759fe6b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4661, "upload_time": "2012-01-18T04:03:31", "url": "https://files.pythonhosted.org/packages/ac/40/df206e6391a4eba7272b87bf95ad3eaf55928cee94f0763eeb89831e56ce/gmtasks-0.1.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "d17d2f1041df4301e85da9e8ec98626f", "sha256": "61f456f8aa7b00b70b0b4b97be3fe16c30f928413019751f2bb49325e38aac18" }, "downloads": -1, "filename": "gmtasks-0.2.tar.gz", "has_sig": false, "md5_digest": "d17d2f1041df4301e85da9e8ec98626f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5300, "upload_time": "2012-01-18T05:29:31", "url": "https://files.pythonhosted.org/packages/65/5a/f86f539f176ee18b0c83307a233d64d836e3da965e3b83f37d39719fe920/gmtasks-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "3d2ea077c7e45ff8b470b54320b20f83", "sha256": "7dba14723054f7014a902b210e2634c8b47f68b0e5450e3486242e682497d5cf" }, "downloads": -1, "filename": "gmtasks-0.3.tar.gz", "has_sig": false, "md5_digest": "3d2ea077c7e45ff8b470b54320b20f83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6230, "upload_time": "2012-01-20T03:37:49", "url": "https://files.pythonhosted.org/packages/3a/c1/8e864da5bec89dd8f73888548a51a37debea0dc9269317ab93594826d6db/gmtasks-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "0eb0ba4a213f3a83fe8f06a57ebaf394", "sha256": "6c5d389ff9bed4ae54d3435cfc1c64803862f936629418b1f0239a3cf417074d" }, "downloads": -1, "filename": "gmtasks-0.4.tar.gz", "has_sig": false, "md5_digest": "0eb0ba4a213f3a83fe8f06a57ebaf394", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6163, "upload_time": "2013-06-28T06:31:49", "url": "https://files.pythonhosted.org/packages/57/69/2c66bd32adcf444730f5cf67863bdd1c6e7988e36e07757f861e00afa2b1/gmtasks-0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0eb0ba4a213f3a83fe8f06a57ebaf394", "sha256": "6c5d389ff9bed4ae54d3435cfc1c64803862f936629418b1f0239a3cf417074d" }, "downloads": -1, "filename": "gmtasks-0.4.tar.gz", "has_sig": false, "md5_digest": "0eb0ba4a213f3a83fe8f06a57ebaf394", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6163, "upload_time": "2013-06-28T06:31:49", "url": "https://files.pythonhosted.org/packages/57/69/2c66bd32adcf444730f5cf67863bdd1c6e7988e36e07757f861e00afa2b1/gmtasks-0.4.tar.gz" } ] }