【问题标题】:Change app base in bottle to tornado将瓶中的应用程序库更改为龙卷风
【发布时间】:2020-10-29 12:33:30
【问题描述】:

我的团队开发了一个使用瓶子作为网络服务的网站。问题是应用程序已经增长,并且瓶子的简单性没有得到支持。曾经简单的事情变得复杂了。

所以我们决定改为龙卷风。问题是我们不知道瓶子里有多少代码要变成龙卷风。

那么问题来了:

  • 根据你们的经验,从瓶子到龙卷风的转变很容易吗?
  • 需要改很多代码吗?
  • 或者您可以将两者合并?

【问题讨论】:

  • 请问龙卷风哪些方面比较好解决?
  • 从我对龙卷风的研究来看,它可以更好地处理多个请求。我的团队正在开发的应用程序将需要超过 500 台机器和每分钟超过 50 次。
  • 对于您的任务 - 瓶子就足够了。
  • 嗯...不想失礼,请不要误会我,我很感谢您的意见。但是,我提出了三个问题,如果可能的话,我真的很想回答它们。如果我没有提供正确的信息,请直接询问,我会尽我所能提供必要的信息。
  • 您的问题没有简单的答案。如果您的代码设计良好,则很容易进行这种转换。您可以使用 tornado 服务器运行瓶子应用程序。

标签: python web-services tornado web-frameworks bottle


【解决方案1】:

当我的瓶子应用程序的负载开始产生问题时,我发现使用 tornado 作为底层 Web 服务器是一个很好的解决方案。您可以在龙卷风顶部使用瓶子。保留你所有的瓶子代码,然后告诉 tornado 服务器运行它,如下所示:

from bottle import Bottle, get
import tornado.wsgi
import tornado.httpserver
import tornado.ioloop

app = Bottle()

@app.get('/')
    return 'my great web page'

if __name__ == "__main__":
    container = tornado.wsgi.WSGIContainer(app)
    server = tornado.httpserver.HTTPServer(container)
    server.listen(port=80)
    tornado.ioloop.IOLoop.instance().start()

除了服务器的启动方式之外,我的瓶子应用程序中没有任何东西需要更改。当然,这个例子是一个非常简单的案例。

附:我知道这是一个 necro-post,但是,嘿!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-18
    • 1970-01-01
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-02
    • 2022-06-16
    相关资源
    最近更新 更多