python-如何从celery任务异步调用url
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-如何从celery任务异步调用url,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含876字,纯文字阅读大概需要2分钟。
内容图文
![python-如何从celery任务异步调用url](/upload/InfoBanner/zyjiaocheng/679/d3d38b92b5234178a38be57d47daf708.jpg)
我将芹菜与龙卷风一起使用,我想知道如何在任务中异步调用url.
我正在寻找以下方面的东西:
@celery.task
def my_task(data):
def handle_response(response):
if response.error:
print "error"
else:
print "success"
http_client = httpclient.AsyncHTTPClient()
http_client.fetch('some url', handle_response, method='POST', body=data)
要么:
@celery.task
@gen.coroutine
def my_task(data):
http_client = httpclient.AsyncHTTPClient()
response = yield http_client.fetch('some url', method='POST', body=data)
raise gen.Result(response.body)
我现在的问题是我不去响应处理程序.
使用HttpClient可以,但是由于它阻塞了服务器,因此我正在寻找一种非阻塞解决方案.
顺便说一句,我的经纪人是redis,我希望保留它(龙卷风芹菜回调仅在提供解决方案的情况下才适用于pika)
解决方法:
我认为您的方法是一项开销. Celery已经可以异步执行作业了,那么,使芹菜任务执行阻止URL调用的最佳方法是什么呢?在异步任务中添加异步url调用是一种开销.我希望这有帮助.
内容总结
以上是互联网集市为您收集整理的python-如何从celery任务异步调用url全部内容,希望文章能够帮你解决python-如何从celery任务异步调用url所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。