工具型网站,做网站应该买哪一种服务器,安阳县辛村镇,普陀网站开发培训目录 1. 创建django项目2. 安装压力测试工具3. 安装生产级服务器uvicorn4. 多进程部署 1. 创建django项目
在桌面创建一个名为django_test的项目#xff1a;
django-admin startproject django_test然后使用cd命令进入django_test文件夹内#xff0c;使用开发者服务器运行项… 目录 1. 创建django项目2. 安装压力测试工具3. 安装生产级服务器uvicorn4. 多进程部署 1. 创建django项目
在桌面创建一个名为django_test的项目
django-admin startproject django_test然后使用cd命令进入django_test文件夹内使用开发者服务器运行项目 python manage.py runserver启动后使用浏览器访问http://127.0.0.1:8000/效果如下
2. 安装压力测试工具
本次使用ApacheBench压力测试工具用于测试http服务器请求的性能情况下载链接提取码768b 。
解压后进入Apache24中的bin文件夹内运行下述命令 ./ab.exe -n100 -c50 http://127.0.0.1:8000/上述命令表示模拟50个并发每个并发发送100个访问请求。
对于django的开发者服务器来说测试效果如下
Requests per second: 26.42 [#/sec] (mean)
Time per request: 1892.848 [ms] (mean)
Time per request: 37.857 [ms] (mean, across all concurrent requests)
Transfer rate: 281.54 [Kbytes/sec] received其中每秒可以处理的请求数为26.42这并不是一个很高的值下面使用一个生产级服务器用于部署django。
3. 安装生产级服务器uvicorn
uvicorn 是基于 uvloop 和 httptools 构建的非常快速的 ASGI 服务器下面使用它来部署django程序。
首先安装uvicorn
pip install uvicorn然后使用下面的命令启动django
python -m uvicorn django_test.asgi:application然后再按照第2部分内容使用压力测试工具对其进行压力测试效果如下
Requests per second: 143.65 [#/sec] (mean)
Time per request: 348.058 [ms] (mean)
Time per request: 6.961 [ms] (mean, across all concurrent requests)可以看到每秒可以处理的请求数为143.65比使用开发者服务器快了将近6倍。
4. 多进程部署
前面使用uvicorn将django项目进行了生产级部署显著提高了访问效率。但是这种部署只使用了一个进程在最终部署时可以根据服务器核数部署多进程服务命令如下
python -m uvicorn django_test.asgi:application --workers 2这里的参数–workers表示进程数上述命令使用2个进程进行服务。
再按照第2部分内容使用压力测试工具对其进行压力测试效果如下
Requests per second: 214.66 [#/sec] (mean)
Time per request: 232.923 [ms] (mean)
Time per request: 4.658 [ms] (mean, across all concurrent requests)可以看到每秒可以处理的请求数为214.66比单进程快了很多。