def main(): options.parse_command_line() if options.port == None: options.print_help() return parse_config(CONF_FILE) init_logging(options.port) logging.info("Test info:Master start!") logging.error("Test error:Master start!") logging.debug("Test debug:Master start!") global http_server http_server = tornado.httpserver.HTTPServer(Application()) http_server.listen(options.port) signal.signal(signal.SIGTERM, sig_handler) signal.signal(signal.SIGINT, sig_handler) tornado.ioloop.IOLoop.instance().start() logging.info('Exit Master')
def main(): #################parse command####################### options.parse_command_line() if options.port == None: options.print_help() return ############parse and load config file############### parse_config(CONF_FILE) ############init logging############################## init_logging(options.port) logging.info("Test info:Master start!") logging.error("Test error:Master start!") logging.debug("Test debug:Master start!") ############setting tornado server##################### global http_server http_server = tornado.httpserver.HTTPServer(Application()) http_server.listen(options.port) #################init db const value################### TableSelectSql(GlobalVar.get_db_handle()) TableFields(GlobalVar.get_db_handle()) ##############set signal handler####################### signal.signal(signal.SIGTERM, sig_handler) signal.signal(signal.SIGINT, sig_handler) ############start tornado server####################### tornado.ioloop.IOLoop.instance().start() logging.info('Exit Master')
def main(): # 配置main.py的命令 define("port", default=None, help="Run server on a specific port, mast input", type=int) # start from cmd options.parse_command_line() try: if options.port == None: options.print_help() return except: print 'Usage: python main.py --port=8000' return # 信号监听 def sig_handler(sig, frame): my_logger.warning('Caught signal: %s', sig) tornado.ioloop.IOLoop.instance().add_callback(shutdown) # 关闭服务器 def shutdown(): my_logger.info('Stopping http server') http_server.stop() io_loop = tornado.ioloop.IOLoop.instance() deadline = time.time() + 1 def stop_loop(): now = time.time() if now < deadline and (io_loop._callbacks or io_loop._timeouts): io_loop.add_timeout(now + 1, stop_loop) else: io_loop.stop() my_logger.info('Shutdown') stop_loop() global http_server http_server = tornado.httpserver.HTTPServer(Application()) http_server.listen(options.port) # 按Ctrl+C退出程序 signal.signal(signal.SIGTERM, sig_handler) signal.signal(signal.SIGINT, sig_handler) # start server tornado.ioloop.IOLoop.instance().start() my_logger.info('Exit Master')