我有一个使用bottle框架开发的Python Web应用程序。我的bottle应用是Web API,提供返回JSON数据的方法,因此不需要静态内容。我正在尝试使用CherryPy服务器将其部署到生产环境中,该服务器应该非常适合生产应用程序。
我的web_api.py文件(我的bottle应用)大致如下:
from bottle import Bottle, request
app = Bottle()
@app.get('/stuff')
def do_stuff():
'''
Method that does stuff.
'''
stuff = {'data': 'some data'}
# Return the environment info as Json data
return stuff
我有一个server.py文件,用于在CherryPy服务器上启动Bottle应用程序,看起来像这样:
from my_package.web_api import app
from cherrypy.wsgiserver import CherryPyWSGIServer
server = CherryPyWSGIServer(
('0.0.0.0', 80),
app,
server_name='My_App',
numthreads=30)
server.start()
所以当我使用这个命令运行我的服务器:
python server.py
我的服务器已经成功启动并且在80端口监听,但是一旦我启动了Web服务器,我就无法停止它了。我尝试过Ctrl + C,在开发服务器上起作用,但在这里没有任何效果。我是否正确地启动了服务器?一旦它运行起来,该如何停止它?这是使用CherryPy来启动Bottle应用程序的正确方法吗?
顺便说一下,我正在Windows 8上运行Python 2.7。