一:django请求生命周期流程图
1.Django请求的生命周期的含义
Django请求的生命周期是指:当用户在浏览器上输入URL到用户看到网页的这个时间段内,Django后台所发生的事情。
2.Django请求的生命周期图解及流程
![Django生命周期图](https://i-blog.csdnimg.cn/blog_migrate/96ebe683b858edad8294896579302d8f.jpeg)
3.Django的请求生命周期流程
1.首先 用户在浏览器中输入url,发送一个GET方法的request请求。
2.Django中封装了socket的WSGI服务器,监听端口接受这个request请求,在进行解析封装,然后传送到中间件中,这个request请求再依次经过中间件。
3.对请求进行效验处理,再传输到路由系统中进行路由分发,匹配相对应的视图函数(FBV),再将request请求传输到views中的这个视图函数中,进行业务逻辑处理。
4.调用modles模型层中表对象,通过orm拿到数据库(DB)的数据。
5.同时拿到templates中相应的模板进行渲染,然后将这个封装了模板response响应传输到中间件中,依次进行处理,最后通过WSGI再进行封装处理,响应给浏览器展示给用户。
![image](https://i-blog.csdnimg.cn/blog_migrate/a23a851a304bb8cc604f6ef936f1c2fe.png)
4.Django的请求生命周期(分布解析)
浏览器
发送请求(HTTP协议)
web服务网关接口
1.请求来的时候解析封装
响应走的时候打包处理
2.django默认的wsgiref模块不能承受高并发 最大只有1000左右
上线之后会替换成uwsgi来增加并发量
3.WSGI跟wsgiref和uwsgi是什么关系
WSGI是协议
wsgiref和uwsgi是实现该协议的功能模块
django后端
1.django中间件(暂时不考虑 后面讲)
类似于django的保安 门户
2.urls.py 路由层
识别路由匹配对应的视图函数
3.views.py 视图层
网站整体的业务逻辑
4.templates文件夹 模版层
网站所有的html文件
5.models.py 模型层
ORM
额外扩展:缓存数据库的作用
5.扩展知识(缓存数据库)
缓存数据库:
提前已经将你想要的数据准备好了 你来直接拿就可以
提高效率和响应时间
当你在修改你的数据的时候 你会发现数据并不是立刻修改完成的
而是需要经过一段时间才会修改《博客园》