Django可以在Nginx(或其他一些服务器,但我们现在要使用Nginx)或manage.py runserver
Django自己的服务器上运行。在这两种情况下,我需要数据完整性和恢复。使用Django和Nginx的数据完整性和恢复
对于数据完整性,我不需要终止(一些)Django请求,直到完成。他们不应该终止,因为他们应该完成在数据库中启动数据修改以保持数据完整性(并且不,使用SQL事务是而不是的一种解决方案)。只要Nginx收到service nginx stop
(在Debian Linux上)或其他类似的命令(在其他操作系统上),它们不应该终止,而是在终止之前完成处理。这个怎么做?
对于数据恢复我想:
在服务器启动时创建一个空文件,服务器停止时将其删除(如何使用Nginx的与
manage.py runserver
做到两者兼而有之?)当服务器启动时,如果找到文件(表明我们的软件崩溃),在服务器启动之前,我们需要运行我的“数据恢复”脚本。这个怎么做?
为什么交易不是一种选择?由于使用需要处理的django信号? – dahrens
和哪个wsgi服务器实际运行在nginx后面? – dahrens
@dahrens大写作交易不是一种选择,因为它们会导致所有客户的阅读操作**延迟**。 – porton