龙卷风的混音
tornadoist的Python项目详细描述
< P> ^ {STR 1 } $ TrnADooist< <强> > -提供MIXIN执行外部代码
tornado.ioloop.IOLoop以避免阻塞。这些是:
-
CeleryMixin:芹菜的任务
加工混合蛋白在分离过程中的作用
两者都支持结果,避免轮询或超时。更多信息如下。
包括演示应用程序。(演示应用程序中预先配置了mongodb://的芹菜)
CeleryMixin
^ {STR 1 } $CayyMyIXIN 是与^ {TT3}$使用的MIXIN类 它提供了一个类似龙卷风的界面,可以在龙卷风服务器上运行芹菜任务。
如何
使用tornado.gen
from tornado import web, gen from tornadoist import CeleryMixin class CeleryHandler(tornado.web.RequestHandler, CeleryMixin): @web.asynchronous @gen.engine def get(self): result = yield gen.Task(self.add_task, some_task, 'somearg') self.write('Hello %s World!' % result) self.finish()
或者使用显式回调
class CeleryHandler(tornado.web.RequestHandler, CeleryMixin): @tornado.web.asynchronous def get(self): self.add_task(some_task, callback=self._on_result) def _on_result(self, result): do_something_with_result(result) self.finish()
< H2>过程混合蛋白
^ {STR 1 } $ PurixMin in /Stult>是一个与^ {TT3}$使用的MIXIN类 为运行 multiprocessing.Process在ioloop外部。
如何
使用tornado.gen
from tornado import web, gen from tornadoist import ProcessMixin class ProcessHandler(tornado.web.RequestHandler, ProcessMixin): @tornado.web.asynchronous @tornado.gen.engine def get(self): result = yield tornado.gen.Task(self.add_task, my_blocking_function, 'somearg', some_kwarg=42) self.write('Hello Process World! %s' % result) self.finish()