是否有人在进行异步数据库提交?

Naf*_*Kay 2 python django asynchronous

我遇到的大多数最长(最耗时)的逻辑基本上涉及两件事:发送电子邮件和将项目提交到数据库.

有没有任何内置机制可以异步执行这些操作,以免减慢页面加载速度?

验证应该同步处理,但实际上,通过电子邮件发送和写入数据库的最佳方式应该是异步的.

例如,假设我想跟踪综合浏览量.因此,每次我得到一个观点,我做:

pv = PageView.objects.get(page = request.path)
pv.views = pv.views + 1
pv.save() # SLOWWWWWWWWWWWWWW
Run Code Online (Sandbox Code Playgroud)

认为我应该通过使整个过程异步来加快速度,这是很自然的吗?

dka*_*ins 5

看看芹菜吧.它为异步工作人员提供卸载任务的方式,就像你要问的那样:发送电子邮件,计算页面浏览量等.它最初只适用于Django,但现在也适用于其他环境.