美文网首页
web框架并发1--tornado

web框架并发1--tornado

作者: 流亡民头 | 来源:发表于2019-01-22 12:21 被阅读0次

当下好多“王婆”卖瓜, 一个劲说架构并发能力 10万、100万, 但看到大家实际并发测试, 确少得可怜。

先说说tornado的并发能力

一、环境

1. python环境

Python 2.7.6

2. tornado环境

4.2.1

3. nginx环境

nginx version: nginx/1.9.9

4. 服务器和操作系统环境

物理双核、逻辑四十核, centos 7

二、tornado 单进程直接测试

1. 代码:

import tornado

import tornado.web

import tornado.httpserver

import sys, signal, time

def sig_handler(sig, frame):

    tornado.ioloop.IOLoop.instance().add_callback(shutdown)

def shutdown():

    HTTP_SERVER.stop()

    io_loop = tornado.ioloop.IOLoop.instance()

    io_loop.stop()

class MainHandler(tornado.web.RequestHandler):

    @tornado.gen.coroutine

    def get(self):

        self.finish()

class Application(tornado.web.Application):

    def __init__(self):

        settings = dict(

            debug=False,

        )

        handlers = [

            (r"/", MainHandler),

        ]

        super(Application,self).__init__(handlers,**settings)

def main():

    global HTTP_SERVER

    try:

        HTTP_SERVER = tornado.httpserver.HTTPServer(Application())

        HTTP_SERVER.listen(sys.argv[1])

    except Exception, ex:

        print "Create and listen http server failed! Exception: %s"% str(ex)

        quit()

    signal.signal(signal.SIGTERM, sig_handler)

    signal.signal(signal.SIGINT, sig_handler)

    tornado.ioloop.IOLoop.instance().start()

if __name__ == "__main__":

    try:

        main()

    except Exception, ex:

        print "Ocurred Exception: %s" % str(ex)

        quit()

2. 执行命令

python server.py --port=40001

3. webbench 测试结果1(1251.4qps):

webbench -c 1 -t 10 http://127.0.0.1:40001/

Speed=75084 pages/min, 279062 bytes/sec.

Requests: 12514 susceed, 0 failed.

经过多次, 不同的客户端数量测试结果相差无几。

相关文章

  • web框架并发1--tornado

    当下好多“王婆”卖瓜, 一个劲说架构并发能力 10万、100万, 但看到大家实际并发测试, 确少得可怜。 先说说t...

  • Djano面试题

    1. Python常用的Web开发框架 1. 企业级开发框架——Django 组成部分 2. 高并发处理框架——t...

  • python web高并发框架思考

    前言(一般这里说下写文章的原因): 首先作为一个QA,写过大大下下的web项目有十几个了,但是遗憾的是一直没有一个...

  • web框架并发2--nginx

    单服务器的并发能力需要依赖多方法的优化。 nginx 服务的并发能力如何 一、 配置 user root; wor...

  • web框架并发5--japronto

    由于机器是python2.7, 但正好有docker环境, 就直接用docker的方式体验传说的120万并发架构 ...

  • Python 四大主流网络编程框架

    高并发处理框架—— Tornado Tornado 是使用 Python 编写的一个强大的可扩展的 Web 服务器...

  • Python 并发编程概念

    本篇文章,我们会详细剖析python并发编程的一些概念还有编程方法,并且同时将所学,对一些大家常用的web框架并发...

  • Python Web框架以及x-sendfile

    Python Web框架 Flask:轻量实用的Web框架 Tornado:Facebook的开源异步Web框架 ...

  • web框架并发3--go stdlib

    go 版本:go version go1.6 linux/amd64 一、代码: package main imp...

  • web框架并发4--go fasthttp

    go 版本:go version go1.10.7 linux/amd64 一、代码 package main i...

网友评论

      本文标题:web框架并发1--tornado

      本文链接:https://www.haomeiwen.com/subject/xtjljqtx.html