Python教程

python web框架之tornado简单使用

本文主要是介绍python web框架之tornado简单使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import sys import os sys.path.append(os.path.dirname(__file__) + os.sep + '../') import json, datetime from tornado.web import RequestHandler, Application from tornado.ioloop import IOLoop from tornado.httpserver import HTTPServer from tornado.options import options from tornado.concurrent import run_on_executor from concurrent.futures import ThreadPoolExecutor import tornado.gen import uuid from redis import Redis

redis_db =8 #你redis的db是哪个 conn =Redis(db=redis_db)


#Test class Test(RequestHandler):   executor = ThreadPoolExecutor(200) #200连接数   @run_on_executor #并发   def post(self):     print(self.request.body)     if not self.request.body:       return self.write(json.dumps({"status": 1, "message": "no postdata"}))     from_data = json.loads(self.request.body) #获取postdata    
#HealthCheck class HealthCheck(tornado.web.RequestHandler):   @tornado.gen.coroutine   def get(self, *args, **kwargs):     self.write((json.dumps({"health_check": "Success"})))


class TornadoServer:   def handle(self):     options.parse_command_line()     # 创建一个项目应用,接入web服务器     app = Application([       (r"/health_check", HealthCheck), # 测试       (r"/test", Test), # 获取代理     ],         settings={       }     )     print('%s--tornado服务启动' % datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))     # 开始监听端口,提供服务     http_server = HTTPServer(app)     http_server.bind((8888)) #生成端口     http_server.start() # 默认参数1 启动一个进程     # start(num) num<=0 按照当前os cpu核心数量 进行 进程启动 fork     # num>1 表示通过fork 启动多个子进程     # 在启动IOLoop之前通过start函数设置进程数量,如果设置为0表示每个CPU都启动一个进程。     IOLoop.current().start()

if __name__ == '__main__':   TornadoServer().handle()
这篇关于python web框架之tornado简单使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!