Python 如何确保Django中较低的服务器负载
我正在开发一个Python 如何确保Django中较低的服务器负载,python,django,server,Python,Django,Server,我正在开发一个Djangoweb应用程序。该应用程序包含的消息将在一定时间后自动删除。我使用timezone.now()作为发送时间,用户输入timedelta以显示消息直到。我通过检查当前时间是否晚于发送时间加上时间差来检查消息是否应该删除自身。这会给服务器带来沉重的负载吗?它多久自动检查一次?有没有办法让它每分钟检查一次(或者设置频率) 谢谢 它多久自动检查一次 “它”是谁?如果您指的是“django进程”,那么它本身不会检查任何内容。您必须使用cronjob或一些异步队列来处理删除“死”消
Django
web应用程序。该应用程序包含的消息将在一定时间后自动删除。我使用timezone.now()
作为发送时间,用户输入timedelta
以显示消息直到。我通过检查当前时间是否晚于发送时间加上时间差来检查消息是否应该删除自身。这会给服务器带来沉重的负载吗?它多久自动检查一次?有没有办法让它每分钟检查一次(或者设置频率)
谢谢
它多久自动检查一次
“它”是谁?如果您指的是“django进程”,那么它本身不会检查任何内容。您必须使用cronjob或一些异步队列来处理删除“死”消息的问题
有没有办法让它每分钟检查一次(或者设置频率)
是的,如上所述。cronjobs是最简单的解决方案,异步队列(如芹菜)的重量要大得多,但是如果您有很多“带外”处理(您希望从请求/响应周期启动但在请求/响应周期之外执行的进程),那么这就是解决方法
这会给服务器带来沉重的负载吗
完全不可能回答这个问题。这取决于您的确切模型、编写“检查和清理”代码的方式,当然还有数据量。但是,使用cronjob或异步队列,这不会在django服务器进程内运行,甚至可以在另一台服务器上运行,只要它可以访问数据库。负载主要在数据库上(当然,在运行该进程的服务器上也是如此,但是根据您的问题描述,一个简单的SQL delete查询应该就足够了)