python web框架 django wsgi原理解析

前言

django wsgi python有个自带的wsgi模块 可以写自定义web框架 用wsgi在内部创建socket对象就可以了 自己只写处理函数就可以了

django只是web框架 他也不负责写socket django 依赖wsgi接口创建socket

wsgi是一套规则 是一套接口

按照wsgi规则写 以后想封装socket 在内部封装socket就可以了 我只要遵循规则 把wsgi模块一导入 我就可以使用wsgi写的socket了

遵循wsg socketi接口有哪些

这些模块已经创建好socket了

server_names = {
  'cgi': CGIServer,
  'flup': FlupFCGIServer,
  'wsgiref': WSGIRefServer,
  'waitress': WaitressServer,
  'cherrypy': CherryPyServer,
  'paste': PasteServer,
  'fapws3': FapwsServer,
  'tornado': TornadoServer,
  'gae': AppEngineServer,
  'twisted': TwistedServer,
  'diesel': DieselServer,
  'meinheld': MeinheldServer,
  'gunicorn': GunicornServer,
  'eventlet': EventletServer,
  'gevent': GeventServer,
  'geventSocketIO':GeventSocketIOServer,
  'rocket': RocketServer,
  'bjoern' : BjoernServer,
  'auto': AutoServer,
}

django 依赖wsgi模块socket django都会导入 python内部的wsgi模块

django 项目有个wsgi.py 文件

import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
application = get_wsgi_application()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python之Web框架Django项目搭建全过程

    Python之Web框架Django项目搭建全过程 IDE说明: Win7系统 Python:3.5 Django:1.10 Pymysql:0.7.10 Mysql:5.5 注:可通过pip freeze查看已安装库版本信息. Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站! Django 特点 强大的数据库功能 用python的类继承,几行代码就可以拥有一个丰富,动态的数据库操作接口(API),如果需要你也能执行SQL语句. 自带的强大的后

  • Apache,wsgi,django 程序部署配置方法详解

    本文实例讲述了Apache,wsgi,django 程序部署配置方法.分享给大家供大家参考,具体如下: 前面写过一篇文章,ngixn,uwsgi,django,python 环境配置,有兴趣的朋友可以参考 nginx,django部署 后来有人在QQ上问我,用Apache 好部署吗?我当时只在windows下用 APACHE2.3,django1.4,wsgi 部署过,还没有在 linux 下部署.前几天有时间,我在 centos 上测试部署了一下.也不难.唯一的差别是,在windows 下有已

  • nginx+uwsgi启动Django项目的详细步骤

    当我们在用django开发的web项目时,开发测试过程中用到的是django自带的测试服务器,由于其安全及稳定等性能方面的局限性,django官方并不建议将测试服务器用在实际生产. nginx+uwsgi+django是我们常用的django部署方式.nginx作为最前端的服务器,他负责接收所有的客户端请求,对于请求的静态文件,由nginx服务器自己完成,因为它具有很好处理静态文件的能力,性能进行过优化,支持高并发量:uWSGI服务器作为支持服务器,是用来服务nginx的,nginx将请求的动态

  • 详解Django+uwsgi+Nginx上线最佳实战

    什么是uwsgi? uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换.WSGI是一种Web服务器网关接口.它是一个Web服务器(如nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范. WSGI是一种通信协议. uwsgi是一种线路协议而不是通信协议,在此常用于在uWSGI服务器与其他网络服务器的数据通信.uwsgi协议是一个uWSGI服务器自有的协议,

  • 全面解读Python Web开发框架Django

    花了两周时间,利用工作间隙时间,开发了一个基于Django的项目任务管理Web应用.项目计划的实时动态,可以方便地被项目成员查看(^_^又重复发明轮子了).从前台到后台,好好折腾了一把,用到:HTML.CSS.JavaScript.Apache.Python.mod_wsgi.Django.好久不用CSS和JavaScript了,感到有点生疏了,查了无数次手册.后台Django开发环境的搭建也花了不少时间和精力.记录下来,免得以后走弯路.同时给大家推荐一下Django框架,如果你想非常快速地编写

  • Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程

    具体环境: Ubuntu 14.04 Python 2.7.6 Django 1.7.1 Virtualenv name:test Nginx uwsgi 假设 项目文件夹位于 /data/www/ts 设置保存在 ./conf 复制代码 代码如下: virtualenv name = test domain name = example.com django+uwsgi的部署实在是太蛋疼了..网上已有的教程似乎有新版本的兼容问题.最后跑到uwsgi官网上找的教程终于跑通了.. 不过官网的教程似

  • django启动uwsgi报错的解决方法

    uwsgi介绍 uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换. 要注意 WSGI / uwsgi / uWSGI 这三个概念的区分. WSGI是一种Web服务器网关接口.它是一个Web服务器(如nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范. uwsgi是一种线路协议而不是通信协议,在此常用于在uWSGI服务器与其他网络服务器的数据通信. 而u

  • python web框架 django wsgi原理解析

    前言 django wsgi python有个自带的wsgi模块 可以写自定义web框架 用wsgi在内部创建socket对象就可以了 自己只写处理函数就可以了 django只是web框架 他也不负责写socket django 依赖wsgi接口创建socket wsgi是一套规则 是一套接口 按照wsgi规则写 以后想封装socket 在内部封装socket就可以了 我只要遵循规则 把wsgi模块一导入 我就可以使用wsgi写的socket了 遵循wsg socketi接口有哪些 这些模块已经

  • Python web框架(django,flask)实现mysql数据库读写分离的示例

    读写分离,顾名思义,我们可以把读和写两个操作分开,减轻数据的访问压力,解决高并发的问题. 那么我们今天就Python两大框架来做这个读写分离的操作. 1.Django框架实现读写分离 Django做读写分离非常的简单,直接在settings.py中把从机加入到数据库的配置文件中就可以了. DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', # 主服务器的运行ip 'PORT':

  • Python Web框架之Django框架Form组件用法详解

    本文实例讲述了Python Web框架之Django框架Form组件用法.分享给大家供大家参考,具体如下: Form简介 在HTTP中,表单(form标签),是用来提交数据的,其action属性说明了其传输数据的方法:如何传.如何接收. 访问网站时,表单可以实现客户端与服务器之间的通信.例如查询,就用到了表单(其属性中,action=get). 再比如说注册与登陆,也是要用到表单的.但这里由于涉及到隐私问题,需要保证数据传输的安全性,因此其传输方法就应当使用post而非get. 总之,对客户端来

  • Python Web框架之Django框架cookie和session用法分析

    本文实例讲述了Python Web框架之Django框架cookie和session用法.分享给大家供大家参考,具体如下: part 1 概念 在Django里面,cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话. 两者最大的区别是cookie的信息是存放在浏览器客户端的,而session是存放在服务器端的. 两者使用的方式都是request.COOKIES[XXX]和request.session[XXX],其中XXX是您想要取得的东西的key. Cooki

  • Python常用Web框架Django、Flask与Tornado介绍

    web框架是什么? web开发框架是一组工具,同时也提供了非常多的资源,供软件开发人员构建和管理网站.提供web服务.编写web应用程序.它是一个抽象工具,能使开发应用程序和重复使用代码的过程变得更容易. 为什么需要web开发框架? 进行自定义软件开发时,web开发框架让整个过程变得更容易,因而开发速度更快.更高效.许多开发框架都很便宜,这也使得整个客户机的成本更小. 一个被广泛使用的框架安全性更高.这主要依赖于该框架背后的社区,在这里,用户成为长期的测试人员,并可以提供修复. 如果发现了安全漏

  • Python Web框架之Django框架Model基础详解

    本文实例讲述了Python Web框架之Django框架Model基础.分享给大家供大家参考,具体如下: model是关于你的数据的单一的,确定的信息来源. 它包含您正在存储的数据的基本字段和行为.Django通过抽象化的模型层(models)为你的网络应用提供对于数据的结构化处理和操作处理,数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库,使用数据库API对数据库进行增删改查的操作. 使用哪种数据库,只需要在se

  • Python Web框架之Django框架文件上传功能详解

    本文实例讲述了Python Web框架之Django框架文件上传功能.分享给大家供大家参考,具体如下: 上传方式: - Form表单上传文件 - Ajax上传文件 - 基于form表单和iframe自己实现ajax请求 1,创建项目 2,settings配置(注册app01,static路径等等这些)及url添加(略过) 3,views视图函数 form的视图收到了在request.FILES中的文件数据.从上述form来的数据可以通过request.FILES['file']来存取. 特别注意

  • 如何利用python web框架做文件流下载的实现示例

    hello 大家好, 前不久公司里有个需求,把时序数据库中的日志下载到本地. 大家都知道. 数据库里的数据 都是存在数据库里的(废话). 想把他下载到客户的本地. 有的同学第一反应是: 只有文件才能下载. 所以大多数同学会想到先把数据从数据库中读出来,然后写入到服务器中的某个文件夹下生成文件, 然后再下载. 其实这是非常不效率的方法, 最简单的方法是,我们从数据库中读取到文件后, 直接以流的形式让用户去下载. 这里我拿python flask框架来做例子,其实非常简单,步骤一共有3个 1: 取出

  • python web框架的总结

    1.Django Django可能是最具代表性的Python框架,是遵循MMVC结构模式的开源框架.其名字来自DjangoReinhardt,法国作曲家和吉他演奏家,很多人认为他是历史上最伟大的吉他演奏家.位于堪萨斯州的Lawrence城市的LawrenceJournal-World报社有两名程序员,AdrianHolovaty和SimonWillison,他们在2003年开发了Django,为报纸开发了网络程序. 2.TurboGears TurboGears是SQLAlchemy.WebOb

随机推荐