【问题标题】:Scalable Flask server [duplicate]可扩展的 Flask 服务器 [重复]
【发布时间】:2018-04-28 12:41:21
【问题描述】:

是否可以扩展 Flask 服务器?

我有一个使用 Flask 的 python 服务器,当它从我的网络应用程序收到请求时,它会根据端点执行一些操作。问题是这某事可能需要一些时间。

我想并行处理多个请求。换句话说,扩大规模。

当我一个接一个地发送请求时,它只是等待第一个完成后再参加另一个,有什么方法可以并行运行?

【问题讨论】:

  • 你没有具体说明你是如何运行你的烧瓶应用程序的。
  • 我建议你阅读部署指南:flask.pocoo.org/docs/latest/deploying
  • Scalable 表示在多台机器上运行服务器。这并不真正适用于网络服务器,因为它们之间不需要同步。数据库是不同的故事。您正在寻找的是所谓的多线程支持,其中一个线程可以为一个用户服务。更多线程 = 更多并发连接 = 更多服务器负载。
  • @AndrejsCainikovs 不,它没有。扩展 Web 应用程序的方法有很多种,多台机器只是其中之一。
  • @DanielRoseman 好的,肯定有不同的情况。但我的直觉是 OP 不需要扩展他的网络应用程序(还没有?)。

标签: python flask scalability


【解决方案1】:

我假设您使用的是烧瓶内置的“测试”服务器,它确实不是为生产工作负载设计的。

您要做的是在支持执行 python 的适当 Web 服务器(例如 Apache 或 Nginx)上运行您的应用程序,这些将轻松处理许多同时连接

我将从这里开始: http://flask.pocoo.org/docs/0.12/deploying/

特别关注这些部分

  • uWSGI
  • FastCGI

【讨论】:

  • 我可以在 Windows 上使用它们吗?我必须在 Windows 上运行它,因为我使用了一些 Windows 功能。
  • 是的,you can。但我强烈建议迁移到 Linux。
  • 非常感谢,非常有帮助。所以只是为了确保我得到它,我运行 Nginx Web 服务器并在其上运行 FastCGI 进行负载平衡,对吗?它在windows中受支持,对吧?我在哪里设置端点?
猜你喜欢
  • 1970-01-01
  • 2011-05-06
  • 1970-01-01
  • 1970-01-01
  • 2011-11-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
  • 2019-06-07
相关资源
最近更新 更多