복붙노트

[REDIS] 토네이도 셀러리는 gen.Task 또는 콜백을 사용할 수 없습니다

REDIS

토네이도 셀러리는 gen.Task 또는 콜백을 사용할 수 없습니다

class AsyncHandler(tornado.web.RequestHandler):

    @tornado.web.asynchronous
    def get(self):
        tasks.sleep.apply_async(args=[5], callback=self.on_result)

    def on_result(self, response):
        self.write(str(response.result))
        self.finish()

인상 오류 :

    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: <bound method AsyncHandler.on_result 
of <__main__.AsyncHandler object at 0x10e7a19d0>> is not JSON serializable

브로커와 백엔드 모두 사용 레디 스는, 난 그냥 복사 https://github.com/mher/tornado-celery

내가 백엔드를 AMQP 브로커를 사용 레디 스 때 레디 스 브로커를 사용하는 경우는 잘 작동하지만. 토네이도 비동기가 레디 스 브로커를 지원하지 않기 때문입니다?

해결법

  1. ==============================

    1.다큐먼트는 말합니다 :

    다큐먼트는 말합니다 :

    그래서 토네이도 셀러리는 브로커로 레디 스를 지원하지 않습니다 내가 +는 백엔드로 레디 스 브로커로 rabbitmq를 사용할 때 ... 그것은 작동합니다.

  2. from https://stackoverflow.com/questions/28804029/tornado-celery-cant-use-gen-task-or-callback by cc-by-sa and MIT license