django知识点回顾

发布时间 2023-05-22 21:04:10作者: weakxy

对django优缺点的了解:优点:自带大量常用框架和工具(auth认证、权限管理等)、强大的数据库管理框架orm、以及独特的app设计理念;缺点:因为封装过多导致改动会比较困难、当流量过大后随之而来的就是性能问题

对比django、flask、tornado:

django:适合开发全栈网站,以及博客/管理类等需求复杂且多的网站,适合小团队快速开发

flask:相比于django更灵活,易用,快速扩展成复杂的应用程序以及微服务

tornado:因为拥有异步非阻塞IO处理方式,相比其它两类拥有更出色的抗负载能力、适合需要性能比较高的项目

 

 

WSGI协议规范:web应用请求处理过程:用户发起请求 -> web服务器(nginx、uWSGI等)接收转发给web应用程序(django、flask等)-> 结果再发给web服务器 -> 给用户展示到浏览器上;在这个整套流程中web服务器以及web应用程序都是多样的,为了规范他们之间的数据交流,就产生了WSGI协议

uWSGI和uwsgi:uWSGI是web服务器,uwsgi是uWSGI自有的协议,uWSGI实现了WSGI、uwsgi、http等协议,用来直接与web应用程序交互、而在用户与uWSGI之间存在nginx是因为1. nginx不能与web应用程序交互,2. uWSGI处理静态文件能力弱

Gunicorn和gevent:Python Web领域还有一个遵循WSGI通信规范的Gunicorn(支持每个worker有多个线程),而gevent是异步处理(协程),通过gunicorn+gevent可以处理高并发问题(多线程+协程)

 

 

django请求的生命周期