Tornado学习 --- 学习目的

引言

回想django的部署方式

以django 为代表的python web 应用部署是采用的是wsgi协议与服务器对接(被服务器托管),而这类服务器通常都是基于多线程的 也就是说每一个网络请求服务器都会有一个对应的线程来用web应用(如 django)进行处理。

考虑两类应用场景

1 用户量大 高并发
如秒杀抢购 双十一某宝购物 春节抢火车票
2 大量的http持久连接

  • 使用同一个TCP 连接来发送和接收多个htttp 请求应答 而不是为每一个新的请求/应答打开新的连接方法。
  • 对于HTTP 1.0 可以在请求的包头(Header)中添加Connection:Keep-Alive
  • 对于Http 1.1 所有的连接默认都是持久连接

对于这两种场景,通常基于多线程的服务器很难应对

C10K 问题

  • 对于前文提出的这种高并发问题 我们通常用C10K 这个概念来描述 C10K— Concurrently handing ten thousand connections 即并发10000个连接 对于单台服务器而言,根本无法承担,而采用多台服务器分布式又意味着高昂的成本,如何解决C10K问题?
Tornado

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值