当前位置: 首页 > 网络应用技术

UWSGI开始django ctrip多少?

时间:2023-03-08 14:00:56 网络应用技术

  简介:今天,首席CTO笔记将与您分享UWSGI初创公司Django Ctrip的相关内容多少。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!

  当Django使用多线程线程时,由于UWSGI不会打开多线程默认值,因此我们需要手动打开UWSGI的多线程。

  休闲少,直接配置。

  在UWSGI的标准文件uwsgi.ini中添加以下线程字段

  这样,可以打开多线程。

  Django部署了爬网服务。客户端发送请求后,Django立即打开线程以执行时间 - 令人震惊的爬网。Django将返回客户“请等待”,而无需等待爬虫的结果。查询或Websocket的结果返回了客户爬网任务。

  可以使用Django运行RunServer运行项目,但是当使用NGINX+ UWSGI运行项目时,Reptile HTTP的HTTP请求将不会返回结果;当使用UWSGI分别拉动项目时,爬网的HTTP返回结果很慢。

  最后,发现UWSGI不支持多线程默认值。需要打开多线程(如上所述)以解决问题。

  1.安装UWSGI库

  PIP安装UWSGI

  2.在Django目录中创建配置文件。

  我的项目目录结构如下:

  输入apimanager(相应的设置,URLS)目录,即带有wsgi.py文件夹的djangoxx_socket.xml文件。

  我叫djangomgr_socket.xml,名称是休闲的。

  djangomgr_socket.xml内容如下:

  UWSGI

  插座:8999/插座

  chdir/webroot/wjc/apimgr // chdir

  Modulewsgi/模块

  proceses1/processes! - 过程编号 -

  daemonizeuwsgi.log/daemonize

  /uwsgi

  注意:

  1. CHDIR通往项目根目录的路径(包含Manage.py的目录)

  2.套接字端口号是需要在NGINX中访问的端口号

  3. Daemonize是运行日志。当不填充路径时,默认值将在与djangomgr_socket.xml相同的路径下生成uwsgi.log。当然,您也可以自己指定路径。

  3.配置nginx

  NGINX配置如下。配置配置后,测试并重新启动NGINX。

  测试nginx:

  命令:nginx -t -Test nginx配置文件是否错误

  重新启动nginx:

  命令:nginx -s reload(或服务nginx restart)

  服务器 {

  听80;

  server_name apimgr.myexist.cn;

  地点/{

  包括uwsgi_params;

  UWSGI_PASS 127.0.0.1:899;

  }

  本地?。*。html |zip |rar)$

  {{{

  root/webroot/wjc/apimgr/apimgr/templates/;

  如果(-f $ request_filename){

  到期最大;

  休息;

  }

  }

  access_log/var/log/nginx/myexist/apimgr.myexist.access.access.log;

  error_log/var/log/nginx/myexist/apimgr.myexist.cn.error.log;

  }

  4.开始服务:

  在djangoxx_socket.xml的路径下:

  execute命令:uwsgi -x djangoxx_socket.xml

  您可以启动服务,并且可以在uwsgi.log中查看启动日志

  1.将[UWSGI]中的流程设置为4要少得多。此事代表您,同时您可以处理几个请求。将其更改为32.100的科学可以在100.2处接受。这种访问量绝对不是由Nginx的瓶颈引起的。您需要优化应用程序。

  uwsgi配置文件huayuntools.ini

  nginx配置文件

  uwsgi配置文件huayuntools.ini

  nginx配置文件

  创建一个文件夹,将所有INI文件放入/home/nginx/uwsgi文件夹中,然后运行

  结论:以上是有关UWSGI初创公司Django Ctrip的主要CTO注释的所有内容。感谢您阅读本网站的内容。我希望这对您有帮助。不要忘记在此网站上找到它。