当前位置: 首页 > news >正文

茂名网站制作网页大连建设学院网站

茂名网站制作网页,大连建设学院网站,微信搭建小程序需要多少费用,自己建设的网站打开慢首先了解一下开发环境服务器跟生产环境服务器有何不同。 一、我们通过 python manage.py runserver 启动开发环境服务器,这条命令背后做了哪些事情? 1、首先加载Django项目的设置(settings) 2、检查数据库迁移,确保数…

首先了解一下开发环境服务器跟生产环境服务器有何不同。

一、我们通过 python manage.py runserver 启动开发环境服务器,这条命令背后做了哪些事情?

1、首先加载Django项目的设置(settings)

2、检查数据库迁移,确保数据库是最新的,或者提醒开发者关于未应用的迁移。

3、启动开发服务器:接下来,Django会启动一个轻量级的Web服务器。这个服务器默认监听127.0.0.1:8000地址和端口,但你可以通过命令行参数更改这些设置。

4、监听文件修改并自动重新加载,代码文件修改后,Django会自动重启服务器,这样你就可以立即看到你的更改效果。

5、静态文件和媒体文件的服务:在开发模式下,runserver也会自动服务静态文件(CSS、JavaScript、图片等)和媒体文件,让你不需要配置额外的Web服务器就能测试这些文件的加载和显示。

6、请求处理:对于进来的HTTP请求,runserver通过Django的WSGI应用来处理。它会根据配置的URL路由将请求分发到相应的视图函数或类视图上,然后返回响应给客户端。

7、输出日志信息:runserver会在控制台输出访问日志和错误信息,这对开发者调试应用非常有用。

我们重点关注3和6(启动开发服务器 和 请求处理),django内置了一个轻量服务器模块:django.core.servers.basehttp。当你运行python manage.py runserver命令时,Django会通过django.core.management.commands.runserver模块创建一个django.core.servers.basehttp.WSGIServer实例,这个实例是 Django 的轻量级 Web 服务器的核心。它接收 HTTP 请求并将其转发给 Django 的 WSGI 应用处理,然后再将响应返回给客户端

二、我们看看生产环境,以Nginx + Gunicorn + Django为例。

这个配置下,整个http请求处理过程中不会启动django.core.servers.basehttp.WSGIServer

而是会启动Gunicorn服务器:以下是启动Gunicorn服务器的指令。

gunicorn myproject.wsgi

默认情况下,Gunicorn会监听127.0.0.1:8000地址

然后就是  客户端 <--->Nginx<--->Gunicorn<--->WSGI<--->你写的脚本 

参考这个图:

三、对于IIS+wfastcgi+django 

IIS的作用相当于Nginx,

wfastcgi的作用也类似于Gunicorn,都是将HTTP请求转换为WSGI兼容请求,并传递给Django应用,但wfastcgi的功能比Gunicorn少。例如:

Gunicorn 可以监听HTTP请求以及将WSGI应用的响应发送回客户端,而wfastcgi没有自己监听HTTP请求的能力,也不能将response发送给客户端,它是依赖于IIS来接收接收和发送响应的。-->因此,Gunicorn可以独立作为服务器(无需Nginx),但wfastcgi脱离了IIS就无法处理请求和响应。

四、对于 IIS+httpPlatformHandler +django

 使用HttpPlatformHandler时,是需要搭配Gunicorn或uWSGI才能完成整个http的请求+响应的。

如果没有搭配Gunicorn或uWSGI,而使用以下这个配置的话,实际上是启动了Django内置的开发服务器(django.core.servers.basehttp.WSGIServer),所以这个配置并不适用于生产环境。

<?xml version="1.0" encoding="UTF-8"?>  
<configuration>  <system.webServer><handlers><add name="httpPlatformHandler" path="*" verb="*"modules="httpPlatformHandler" resourceType="Unspecified"/></handlers><httpPlatform processPath="D:\home\Python27\python.exe" arguments="manage.py runserver %HTTP_PLATFORM_PORT%" requestTimeout="00:04:00" startupTimeLimit="120" startupRetryCount="3" stdoutLogEnabled="true"><environmentVariables><environmentVariable name="PYTHONPATH" value="D:\home\site\wwwroot"/></environmentVariables></httpPlatform></system.webServer>
</configuration>  

若把:

arguments="manage.py runserver %HTTP_PLATFORM_PORT%" 

改为gunicorn就可以用于生产环境了:

arguments="gunicorn myproject.wsgi:application --bind 0.0.0.0:%HTTP_PLATFORM_PORT%"

或为waitress 也可以用于生产环境:

arguments="run_waitress_server.py" -----------------------------------------------------
# 前提是确保先安装了waitress
pip install waitress# run_waitress_server.py 的代码如下:import os
from waitress import serve
from index import appserve(app,host="0.0.0.0",port=os.environ["PORT"])

waitress 是跟 Gunicorn 同性质的纯python web server,相比之下,waitress 配置更简单但性能弱一些,适合小型项目。网上有不少waitress vs Gunicorn 的比较文章。

启动uwsgi的命令是

#启动 uwsgi 命令
# cd ./mysite/mysite      # uwsgi.ini 配置文件 下执行
uwsgi --ini uwsgi.ini
http://www.yayakq.cn/news/723723/

相关文章:

  • 公司做网站计入那个科目杭州h5建站
  • 网页设计网站页面搜索的代码企业 网站 建设 规范
  • 企业网站开发一薇枣强网站建设
  • 买了个服务器 怎么做网站网络维护工资多少一个月
  • 外贸网站设计郑州网站图片计时器怎么做
  • 做外贸铝材哪个网站比较好帮别人做网站备案
  • 云南百度智能建站一是加强了网站建设
  • 全球网站域名苏周到app开发公司
  • 节约化网站群建设情况做清洁找什么网站
  • 网站建设所需人力时间电子商务网站建设试题
  • 陕西东盟建设工程有限公司网站我看别人做系统就直接网站下载软件
  • 南昌网站优化拍卖网站模板
  • 企业网站前期建设百度官方营销推广平台官网
  • 智能行业网站模板wordpress界面404
  • 十四冶建设集团技工学校网站西安十大网络公司排名
  • 网站建设界面ppt演示企业邮箱怎么在手机上登录
  • 手机网站建设的整体流程图英语seo
  • 最专业的企业营销型网站建设价格网站开发是在电脑上打出来的资料么
  • 无锡外贸网站制作网站建设简单个人主页
  • 网站建设开票应该开哪个行业应用公园制作app免费吗
  • 网络网站建设属于什么费用中国建设人才信息网站查询
  • 杭州网站建设公司有哪些宝坻做网站哪家好
  • 单页 网站模板抖音seo优化软件
  • ai可以用来做网站吗泾川网站建设
  • 手机网站qq代码广告投放运营主要做什么
  • 住房城乡建设干部学院网站网站做好了怎么办
  • 南昌网站建设策划附近室内设计培训学校
  • 北京企业网站改版山西省国贸网站建设
  • qq钓鱼网站怎么制作网站设计用什么字体
  • 网站建设莱州哪家强?淄博培训网站建设