Python全系列 教程
3567个小节阅读:5929.1k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Tornado是一整套的异步编码方案: 不仅仅一个套完整web框架,还包含了一整套http协议以及、websocket协议的库、还有异步库
我们不光可以通过Tornado开发web应用,还可以通过Tornado部署其它的web应用(充当的就是Nginx)
虽然核心来说可以当服务器使用,一般不会用tornado替代掉nginx,毕竟nginx有的功能tornado是没有的,比如说发送邮件,流量限速,负载均衡等等
那为什么torndao要是一个web服务器呢?
因为nginx服务器从一开始的就是用来提供给同步的web应用框架使用的,而tornado是一个套异步的web框架,可以说算是一套新的框架。所以说如使用nginx这样的服务器,也不能很好结合的。
所以说,tornado不得不重新实现一个基于epoll协议的web服务器
Tornado能高并发主要的原因就是因为协程。我们之前了解过进程、线程、协程。而操作系统可以调度的最小单元就是线程。所以说,若想调度协程需要我们自己程序来调度,没有办法通过操作系统来调度。早起版本的Python开发协程比较复杂,现在Python开发比较容易了(3.6+以后)。Tornado底层协程使用asyncio。所以我们后面也是通过asyncio实现的任务调度
比如说:常规网络服务是这样的,我们在聊天时,想看别人有没有发消息过来,我们要刷新页面才知道。后来随之时代的进度,收别人的消息就不在用刷新页面。
再比如:打个某些,尤其是金融或者新闻网站 。当打网站时,一有新消息就会有信息推送出来
这些都是websocket支持的
实时学习反馈
1. 关于Tornado的优势说法错误的是?
A Tornado的优势之一是不仅是web框架,还是个服务器
B Tornado的优势之一是有套基于协程的解决方案
C Tornado的优势之一是提供websocket的长链接
D Tornado的优势之一是自带负载均衡的功能
答案
1=>D