Skip to content

iamsk/tmiddleware

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

TMiddleware

Middleware for tornado

Build Status

Installation

pip install tmiddleware

or

git clone git@github.com:iamsk/tmiddleware.git
cd tmiddleware
python setup.py install

Requirements

  • python 2.6 or 2.7
  • tornado 2.4+

Minimal Demo

$ more examples/miminal.py

import tornado
import tornado.httpserver
from tornado.options import define, options
from tornado.web import RequestHandler

from tmiddleware.handler import TMiddlewareHandler

define('port', 7777)
MIDDLEWARES = ['plugins.slow_request.SlowRequestMiddleware', 'plugins.profile.ProfileMiddleware']
define("middlewares", default=MIDDLEWARES, help="middleware class list")


class With(TMiddlewareHandler):
    def get(self):
        import time
        time.sleep(4)
        return self.finish('Hello World!')


def run():
    application = tornado.web.Application([('/', With)])
    http_server = tornado.httpserver.HTTPServer(application, xheaders=True)
    http_server.listen(options.port, '0.0.0.0')
    tornado.ioloop.IOLoop.instance().start()

if __name__ == '__main__':
    run()

此处使用了自带的两个 middleware,一个用于查看请求的 profile 信息,一个用于在终端下记录超时的请求

$ python miminal.py

$ chrome http://localhost:7777/?__profile__=true

web:

TMiddleware-web

console:

TMiddleware-console

##Plugins

自带了两个:

  1. profile: 查看请求的内部函数耗时信息
  2. slow_request: 记录超时请求

自定义插件参考这两个即可

About

middleware for tornado

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages