from gevent import monkey, signal_handler as sig monkey.patch_all() import bottle import signal from gevent.pywsgi import WSGIServer from geventwebsocket.handler import WebSocketHandler import config.env as env import controller.controller as controller if __name__ == '__main__': app = bottle.app() server = WSGIServer(("0.0.0.0", env.port), app, handler_class=WebSocketHandler) def shutdown(): print('Shutting down ...') server.stop(timeout=60) exit(signal.SIGTERM) sig(signal.SIGTERM, shutdown) sig(signal.SIGINT, shutdown) server.serve_forever()