使用了Gunicorn或者uWSGI,为什么还需要Nginx?

 

Nginx是一个http服务器,可以做请求转发,负载均衡 ( 处理静态资源 ,并将动态请求转发给Gunicorn);
Gunicorn是一个实现了wsgi的一个处理python代码的服务器 ( 处理动态请求
 
* Nginx更安全
* Nginx能更好地处理静态资源(nginx相对uwsgi/Gunicorn处理静态文件更有优势,性能更好)
* Nginx也可以缓存一些动态内容
* Nginx可以更好地配合CDN( 内容分发网络)
* Nginx可以进行多台机器的负载均衡
* 不需要在wsgi server那边处理keep alive
* 让Nginx来处理slow client

一句话来说,如果访问量不大,其实也没必要加个Nginx,uWSGI或者Gunicorn足以胜任。

 
直接通过uWSGI或gunicorn也可以让外网访问到的, 但是鉴于Nginx具有 负载均衡、拦截静态请求、 高性能、高并发、静态文件缓存、甚至还可以做到限流与访问控制,所以选择Nginx是很有必要的;

 
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uWSGIgunicorn都是Python Web应用程序服务器,用于部署和运行Python Web应用程序。它们的优缺点如下: uWSGI的优点: - 高性能:uWSGI是一个高度优化的Web服务器,它可以处理大量并发请求,并且可以使用多个worker进程或线程来处理请求。 - 可扩展性:uWSGI支持多种插件,可以实现各种功能,例如缓存、负载均衡、WebSocket等。 - 稳定性:uWSGI可以在生产环境中稳定运行,并且可以通过监控和管理工具进行监控和管理。 - 支持多种Web服务器:uWSGI可以与多种Web服务器(例如Nginx、Apache)配合使用,可以根据需要选择最佳的Web服务器。 uWSGI的缺点: - 学习曲线较陡峭:uWSGI的配置比较复杂,需要花费一定的时间来学习和掌握。 - 资源占用较高:由于uWSGI是一个高性能的Web服务器,因此需要较多的系统资源来运行。 gunicorn的优点: - 简单易用:gunicorn的配置比较简单,可以快速上手并且可以与Django、Flask等框架无缝集成。 - 资源占用较低:相对于uWSGIgunicorn的资源占用较低。 - 支持多种工作模式:gunicorn支持多种工作模式,例如sync、eventlet、gevent等,可以根据需要选择最佳的工作模式。 gunicorn的缺点: - 性能较差:相对于uWSGIgunicorn的性能较差,不能处理太多的并发请求。 - 功能较少:相对于uWSGIgunicorn的功能较少,不支持多种插件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值