• Django请求生命周期


    img

    流程:

    橙色箭头:浏览器向后端发送请求,先到web服务网关接口,里面有一个wsgiref模块,该模块是django自带的,自身能够承受的并发量非常小,大概只有一千左右,上线之后通常会谎称uwsgi,而且在他前面还会加上nginx做反向代理来提高网站的并发量。接下来就走到了urls.py,路由与视图函数分发的,再到views.py,这里面放的是后端业务逻辑的代码,再到模板里面拿模板,到models里面拿数据,models的数据就是数据库里拿出来的了。templates里面存放的是前端代码。models里面存放的是类。

    黑色小框:django的中间件,相当于是一个保安,所有请求进来都要先经过他,ok了,就进去,返回数据的时候也要经过这个中间件,格式符合才可以过去。

    绿色箭头:当浏览器想要获取数据的时候,经过网关接口,在经过保安,保安不会马上让他进入urls,而是先会去缓存数据库里找有没有他要的,有的话直接返回出去,这样能够节省后端服务器资源,如果没有的话,在走后面的流程,回来的时候,经过保安,往浏览器丢一份,往缓存数据库丢一份。下次来请求相同数据的时候,可以直接返回给浏览器。

    wsgiref和uwsgi跟WSGI是什么关系?

    WSGI类似于一种协议,一种规定,wsgiref和uwsgi是基于这个协议所写的功能,都是用来实现该协议的功能模块。

  • 相关阅读:
    1.python的一些规范
    linux 命令总结
    【背包专题】D
    【算法入门竞赛经典】【7.2枚举排列】
    【练习赛补题】问题 E: 花生采摘 【模拟】
    【背包专题】B
    【背包专题】A
    【ACM对拍程序~】
    【背包专题】E
    河南省第七届大学生程序设计竞赛 问题 A: 物资调度【简单dfs】
  • 原文地址:https://www.cnblogs.com/chanyuli/p/11722566.html
Copyright © 2020-2023  润新知