Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django如何看待线程安全?_Django_Thread Safety_Django Views - Fatal编程技术网

Django如何看待线程安全?

Django如何看待线程安全?,django,thread-safety,django-views,Django,Thread Safety,Django Views,我有几个视图函数来处理来自远程源的数据。在许多情况下,此处理可能需要一秒钟才能完成。同时访问这些视图功能是否会扰乱我的数据 此外,我将有一个持续运行的后台线程,它将填充我的数据库。这个后台线程将调用一些与我的视图函数调用的库函数相同的函数。这是一个潜在的线程安全问题吗 如果是,最佳做法是什么?我假设只使用python的锁定机制就可以了,但是有更好的方法吗 谢谢 -Travis对于长时间运行的进程,请使用 从长远来看,您可以创建一个模型实例,并启动一个芹菜任务来填充它。视图可以显示此实例的状态,并

我有几个视图函数来处理来自远程源的数据。在许多情况下,此处理可能需要一秒钟才能完成。同时访问这些视图功能是否会扰乱我的数据

此外,我将有一个持续运行的后台线程,它将填充我的数据库。这个后台线程将调用一些与我的视图函数调用的库函数相同的函数。这是一个潜在的线程安全问题吗

如果是,最佳做法是什么?我假设只使用python的锁定机制就可以了,但是有更好的方法吗

谢谢


-Travis

对于长时间运行的进程,请使用


从长远来看,您可以创建一个模型实例,并启动一个芹菜任务来填充它。视图可以显示此实例的状态,并在结果出现之前自动刷新html。

我看不到您在那里做任何明显会导致线程问题的事情。线程安全更像是,如果您想并行处理单个请求,那么您必须确保一个请求的多个线程是线程安全的


在您的情况下,每个请求都在访问数据,并将获得自己的副本。

您正在从远程源读取/写入数据。我会尝试在这些远程源上同步访问或使用事务,而不是在客户端

您使用的是什么Web服务器?它使用什么进程/线程模型来运行Django应用程序?