是否有任何托管服务用于托管使用龙卷风开发的简单应用程序。(就像我们在 Google App Engine 中托管)。是否可以在 Google App Engine 上托管?这些应用程序就像一些学生数据(添加、删除、搜索等)。我正在使用 python 开发。
提前致谢
是否有任何托管服务用于托管使用龙卷风开发的简单应用程序。(就像我们在 Google App Engine 中托管)。是否可以在 Google App Engine 上托管?这些应用程序就像一些学生数据(添加、删除、搜索等)。我正在使用 python 开发。
提前致谢
在 Heroku,Cedar 堆栈尚不支持 WebSockets 协议。
在 App Engine 上托管 Tornado 应用程序是绝对可能的;但是,您需要牢记一些注意事项:
App Engine 正在通过 WSGI 部署所有内容,这意味着您无法利用 Tornado 的异步功能,前提是 WSGI 在设计上是异步的。如果你能忍受,你需要用以下方式包装你的应用程序WSGIAdapter
:
app = tornado.web.Application(url_list, **server_settings)
if __name__ == '__main__':
# start the server if run directly
import tornado.httpserver
http_server = tornado.httpserver.HTTPServer(app)
http_server.listen(8080, address='localhost')
tornado.ioloop.IOLoop.instance().start()
else:
# wrap as WSGI
import tornado.wsgi
app = tornado.wsgi.WSGIAdapter(app)
App Engine 要求在您的源代码中提供所有特定于应用程序的库,因此您不能通过 使用virtualenvs
或安装库pip
,并且您的所有模块都必须是纯 Python。最好的方法是有一个特殊的目录,而不是由源代码管理跟踪,并在本地安装所有内容pip install -U -t lib/ -r requirements.txt
(假设该目录名为lib
. 当然,您需要通过将其添加到应用程序的配置:
sys.path.insert(0, os.path.join(os.path.abspath('.'), 'lib'))