您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页Tornado解决C10K问题

Tornado解决C10K问题

来源:伴沃教育
以Django为代表的部署方式是什么

在谈Tornado解决C10K问题之前,首先要提一下django的部署web应用的方式。以Django为代表的python web应用部署时采用wsgi协议与服务器对接(被服务器托管),而这类服务器通常都是基于多线程(一种一个创建一个线程,另一种提前先创建count(n)个)的,也就是说对于每一个网络请求,服务器都会有一个对应的线程来用web应用进行处理。

多线程服务器的局限
C10K的概念

C10K—— Concurrently handling ten thousand connections,即并发10000个连接。对于单台服务器而言,根本无法承担,而采用多台服务器分布式又意味着高昂的成本。

Tornado的产生

Tornado在设计之初就考虑到了性能因素,旨在解决C10K问题,这样的设计使得其成为一个拥有非常高性能的解决方案(服务器与框架的集合体)。

Tornado的优势

Tornado全称Tornado Web Server。从字面意思来看,Tornado的强大之处就显现出来了。它可以作为一个web服务器有可以充当web应用框架,作为Web框架,是一个轻量级的Web框架,类似于另一个Python web框架Web.py,其拥有异步非阻塞IO的处理方式;作为Web服务器,Tornado有较为出色的抗负载能力,最大浏览量能实现其他python web应用框架的三倍以上。性能上Tornado具有显著的优势,毕竟设计之初就是试图解决C10k问题(即处理大于或等于一万的并发),这也就是为什么之前我们每周日12:00看runningman爱奇艺的服务器没有瘫了~~。

关于Tornado使用平台及原理(官方直译版~~)

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务