导读:很多朋友问到关于部署django为什么用uwsgi的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
为什么 uwsgi部署django
Django自己运行的只用于开发者调试,且为单线程工作。如果是要作为产品发布则需要用到其他的服务器部署,比较常见的用Nginx+uwsgi。
python Django自带wsgi.py 为什么部署还需要uWSGI
Django自己运行的只用于开发者调试,且为单线程工作。如果是要作为产品发布则需要用到其他的服务器部署,比较常见的用Nginx+uwsgi。
Django本身提供了runserver,为什么不用来部署
Django本身自带了runserver,但是我们只是在测试的时候,会用到它,而在真正的生产部署一般都会使用uwsgi+nginx方式。
因为我们的生产环境一般都会有很大的并发访问量,而django自带的runserver非常不稳定,最大连接数大约在几十个,过多的并发连接,导致服务崩溃,而且安全性上也不好。
而nginx可以支持高并发连接,官方给出最大连接数在50000个左右,实际生产中,大约也在20000~40000个左右,内存消耗少,稳定性高,支持热部署(可以在不间断服务的情况下,进行版本升级)。
相对比较而言,Django自带的runserver,只适合我们在测试的时候使用。
如何用 uWSGI和nginx部署django
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式。
在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求。nginx把所有静态请求自己来处理(这是NGINX的强项)。然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求。
可见,uwsgi的作用就类似一个桥接器。起到桥梁的作用。
Linux的强项是用来做服务器,所以,下面的整个部署过程我们选择在Ubuntu下完成。
结语:以上就是首席CTO笔记为大家整理的关于部署django为什么用uwsgi的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~