gpt4 book ai didi

python - Django 和 Celery 中的异步逻辑

转载 作者:太空宇宙 更新时间:2023-11-04 10:41:32 25 4
gpt4 key购买 nike

从此question ,我有这个任务:

@task()
def create_user(data):
try:
User.objects.get(username=data['username'])
return 'Username already exists'
except:
user = User.objects.create_user(username=data['username'], email=None, password=data['password']
)
user.save()
profile = UserProfile()
profile.user = user
profile.token = generate_token()
profile.save()

return profile.token

我对 Celery 工作方式的理解是,这个任务可以放在一个队列中,并在一段时间后执行,假设有很多请求。

假设一个移动应用程序正在与该服务器通信。用户将用户名和密码组合发送到服务器进行注册。服务器只有在处理完任务后才会返回 token 。如果没有 token ,客户将无法登录。所以我必须等到任务处理完毕才能发送 token 。所以一切都变成了异步处理。那么Celery是如何解决这个问题的呢?

最佳答案

当不需要用户等待响应而不是用于登录等简单任务时,celery 应该用于繁重的服务器端任务。

关于python - Django 和 Celery 中的异步逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20380145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com