iOS 应用后端的 web.py 部署
Posted
技术标签:
【中文标题】iOS 应用后端的 web.py 部署【英文标题】:web.py deployment for iOS app backend 【发布时间】:2011-12-08 22:39:28 【问题描述】:我目前正在开发一个需要后端来从中提取数据的 ios 应用程序。我已经使用 Python、web.py 和 pymongo 实现了后端。
我在 EC2 实例上部署了所有内容,为 iOS 设备调用以访问后端的实例分配了一个弹性 IP,然后通过 SSH 启动应用程序:
nohup python main.py &
一切正常(每天几十个用户,有增长的潜力;传输的数据很少超过几千字节),但我想知道这是否是正确的处理方式。
例如在 web.py 网站上,他们解释了如何将 web.py 与 Apache、lightppd 等一起使用;这些只是特殊情况,还是我应该使用其中一台功能齐全的服务器来部署我的后端?
【问题讨论】:
【参考方案1】:FWIW,我们在nginx 后面使用CherryPy(“内置”web.py 的网络服务器)来提供 Oyster.com 上的大部分 html —— nginx 将流量拆分到 2 或 3 个网络服务器上,每个服务器都在运行4 个 Python 进程,我们可以轻松处理每秒 100 个请求。
但是,我们对图片和 CSS 等静态资源使用内容交付网络 (CDN)。
【讨论】:
【参考方案2】:我绝对会使用完整的网络服务器,而不是 web.py 中内置的服务器,尽管如果流量仍然很低,你现在应该没问题。我认为 web.py 内置的应该用于调试,而不是生产。
这主要取决于您使用哪种服务器,但我喜欢Nginx 和uWSGI。
【讨论】:
实际上,“内置”web.py 的 Web 服务器 CherryPy 是一个相当快的 Web 服务器。我们在 nginx 后面使用它来建立一个高流量的网站——另见我的回答。 @benhoyt:看起来你是对的;我没有意识到 web.py 使用了 CherryPy。 (我原以为它用了BaseHTTPServer
)给你点赞。以上是关于iOS 应用后端的 web.py 部署的主要内容,如果未能解决你的问题,请参考以下文章