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

使用Nginx和uwsgi在自己的服务器上部署python的flask项目

Nginx 是一个高性能的 HTTP 和反向代理服务。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。

Nginx 专为性能优化而开发,性能是其最重要的考量指标,实现上非常注重效率,能经受住高负载的考验,有报告表明能支持高达50000个并发连接数。

在连接高并发的情况下,Nginx 是 Apache 服务不错的替代品。

什么是代理和反向代理呢?

代理其实就是一个中介,A和B本来可以直连,中间插入一个C,C就是中介。刚开始的时候,代理多数是帮助内网client(局域网)访问外网server用的。 后来出现了反向代理,反向这个词在这儿的意思其实是指方向相反,即代理将来自外网客户端的请求转发到内网服务器,从外到内。

 uWSGI 是一个 Web 服务器,它是一个用 C 语言编写的 Web 应用程序容器,支持运行 Python、Ruby、Perl 等多种编程语言。uWSGI 服务器可以作为一个独立的应用服务器,也可以与其他 Web 服务器(如 Nginx、Apache)一起使用,通过 WSGI 协议与 Python 应用程序通信。

nginx服务器配置

使用 service nginx start 启动nginx服务

uwsgi配置,在项目目录下新建uwsgi.ini文件,编辑文件,写入以下内容

 

其中的路径等内容改为自己项目的路径,app.py即flask项目的启动文件,因为使用了nginx进行代理,所以使用的socket而不是http,同时socket的IP应该为0.0.0.0,而不是127.0.0.1,这样做是为了让公网上的其他用户能不受限制的访问,同时app.py中的启动应该写为run(host=0.0.0.0)。

使用uwsgi --ini uwsgi.ini 命令启动uwsgi服务,因为这里nginx绑定的是80端口,所以启动成功后就可以通过访问你的公网ip访问到你的flask项目了。 如果是其他如5000端口则需要通过ip:5000这样访问你的项目。

http://www.lryc.cn/news/232159.html

相关文章:

  • 【Windows 开发环境配置——NVIDIA 篇】CUDA、cuDNN、TensorRT 三件套安装
  • 【C++】【Opencv】cv::GaussianBlur、cv::filter2D()函数详解和示例
  • 【数据分享】1961—2022年全国范围的逐日降水栅格数据
  • [Linux] 网络文件共享服务
  • 二十七、W5100S/W5500+RP2040树莓派Pico<iperf 测速示例>
  • 非常经典的一道SQL报错注入题目[极客大挑战 2019]HardSQL 1(两种解法!)
  • 创建一个用户test且使用testtab表空间及testtemp临时表空间并授予其权限,密码随意
  • Linux网络应用层协议之http/https
  • LLM(四)| Chinese-LLaMA-Alpaca:包含中文 LLaMA 模型和经过指令微调的 Alpaca 大型模型
  • 虚拟机CentOS 8 重启后不能上网
  • 让AI拥有人类的价值观,和让AI拥有人类智能同样重要
  • 《C++避坑神器·十七》找到程序崩溃Bug的一个实用方法:dump调试
  • ROS stm32 CAN通信
  • 简单地聊一聊Spring Boot的构架
  • 【算法】复习搜索与图论
  • 【KCC@南京】KCC南京数字经济-开源行
  • 苍穹外卖-day11
  • git_07_协同开发
  • 对比国内主流开源 SQL 审核平台 Yearning vs Archery
  • Mistral 7B 比Llama 2更好的开源大模型 (三)
  • 关于 Git 你了解多少?
  • 关于Elasticsearch的自动补全、数据同步和集群,以下是相关的知识点
  • linux套接字-Socket
  • debian 修改镜像源为阿里云【详细步骤】
  • 从0到0.01入门React | 004.精选 React 面试题
  • Linux 本地zabbix结合内网穿透工具实现安全远程访问浏览器
  • 【以图会意】文件系统从外存到内存到用户空间
  • 一、交换配置
  • 验证码:EasyDL 机器学习识别与云码平台一站式识别
  • postgreSQL中的高速缓存