django服务器的响应流程

服务器响应流程

    • -browser -> load balance(负载均衡)
    • -load balance -> Nginx(Web Server)
    • -Nginx -> Http Server(uwsgi, gunicorn, runserver)
    • -Http Server -> process_request
    • -process_request -> urls
    • -urls -> process_view
    • -process_view -> views
    • -views -> models
    • -models -> views
    • -views -> process_template_response
    • -process_template_response -> response
    • -response -> process_response
    • -process_response -> Browser

Django的请求到响应的流程,简单的来说就是利用wsgi,当用户发来一个request进行response,请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】,【客户端层】到【反向代理层】的负载均衡,是通过“DNS轮询”实现的,【反向代理层】到【站点层】的负载均衡,是通过“nginx”实现的,【站点层】到【服务层】的负载均衡,是通过“服务连接池”实现的,然后开始经过中间件,Process_Request,如果Process_Request没有return,则程序会进入url,这时程序会检测用户有没有设置process_view,如果有,则接下来先执行process_view,,如果process_view没有return,程序会执行views文件中的函数,函数接下来会向models发送请求,models会把结果返回给视图函数views,然后views开始把结果先给process_template_response这个中间件的响应,经过它以后响应response,经process_response后就把结果响应给了浏览器。


image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Refer to: www.threemeal.com/blog/12/ 中间件 中间件是一个钩子框架,它们可以介...
    兰山小亭阅读 16,738评论 9 164
  • Web框架之Django: (1)简介: Django是一个由Python写成开源的重量级Web应用框架,采用MT...
    老肖阅读 3,155评论 0 18
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,368评论 19 139
  • 那是一汪沼泽 平静的外表 有着魔鬼般的内在 那是一汪沼泽 偶尔冒个泡 显示出峥嵘的面貌 那是一汪沼泽 散发出淡香 ...
    含糖阅读 381评论 0 0
  • 数据可视化 一直是比较难实现的技术,地图可视化更是难上加难,不过现在很多技术可以很轻松的做到地图可视化,在这里主要...
    UIleader阅读 3,455评论 1 2

友情链接更多精彩内容