pip3 install tornado
python
import json, datetime from tornado.web import RequestHandler, Application from tornado.ioloop import IOLoop from tornado.httpserver import HTTPServer from tornado.options import define, options # 異步 import tornado.gen # 定義全局變量 define("port", default=9631) class getTest(RequestHandler): def get(self): # logDebug("shoppingCart","get:test請求成功") return self.write(json.dumps({"code": 200, "message": "請求成功"}, ensure_ascii=False)) class MainHandler(tornado.web.RequestHandler): @tornado.gen.coroutine def head(self, *args, **kwargs): self.write((json.dumps({"Test": "Success"}))) if __name__ == '__main__': options.parse_command_line() # 建立一個項目應用,接入web服務器 app = Application([ (r"/test", getTest), # 路由名稱 ,getTest 類名 (r"/checkhead", MainHandler), # 健康監測通常公司都要加的哦,寫法也是固定的 ], # 也就是須要保證在fork子進程以前IOLoop是未被初始化的。 # autoreload=False, # debug=False, settings={ } ) print('%s--tornado服務啓動' % datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) # 開始監聽端口,提供服務 http_server = HTTPServer(app) http_server.bind((options.port)) http_server.start() # 默認參數1 啓動一個進程 # start(num) num<=0 按照當前os cpu核心數量 進行 進程啓動 fork # num>1 表示經過fork 啓動多個子進程 # 在啓動IOLoop以前經過start函數設置進程數量,若是設置爲0表示每一個CPU都啓動一個進程。 IOLoop.current().start()