Tornado从入门到进阶 打造支持高并发的技术论坛课程介绍:
在本课程中,我们从tornado的基础开发到项目实战进行系统讲解,覆盖理论与实践,完成本课程可以更透彻的理解异步IO并发编程思想,以及正确使用tornado进行并发编程,做一个支持高并发的技术论坛项目!
课程目录:
第1章 Tornado从入门到进阶 打造支持高并发的技术论坛-课程导学 试看1 节 | 14分钟
Tornado从入门到进阶 打造支持高并发的技术论坛-课程导学
收起列表
-
- 视频:1-1 Tornado从入门到进阶 打造支持高并发的技术论坛-导语 (13:23)试看
第2章 开发环境搭建(会的可以略过本章,2-4要看下哦)4 节 | 28分钟
本章节主要讲解搭建开发环境,包括navicat、pycharm、virtualenvwrapper的使用,在本章节也会重点介绍课程资源的下载和配置使用。
收起列表
-
- 视频:2-1 pycharm的安装和使用 (08:55)
- 视频:2-2 mysql和navicat的安装和使用 (07:01)
- 视频:2-3 virtualenv和virtualenvwrapper的安装和配置…. (06:51)
- 视频:2-4 资源和下载和使用(一定要看!!!!!) (05:11)
第3章 为什么要学习tornado 试看5 节 | 41分钟
很多人会把tornado和flask以及django相提并论,只是知道tornado是高并发的,但是因为对tornado的核心不熟悉,就在错误的使用tornado,导致两种结果: 1.写出来的系统并发不高甚至更低, 2. 只是简单的把torando理解为一个web框架。这些都是因为对tornado理解不够导致的。 …
收起列表
-
- 视频:3-1 tornado VS django VS Flask (17:59)
- 视频:3-2 tornado的优势 (07:51)试看
- 视频:3-3 tornado是如何做到高并发的 (04:14)试看
- 视频:3-4 你可能在错误的使用tornado (04:30)
- 视频:3-5 尽量使用async和await而不是coroutine装饰器和yield from (05:46)
第4章 异步和非阻塞9 节 | 130分钟
本章就带领大家去使用torandod的协程,让我们对torando有一个快速的了解,异步和非阻塞主要是通过socket编程,一步步的引出select、poll和epoll、然后我们使用select模型并使用非阻塞的socket接口去模拟了一个事件循环去体验异步和非阻塞的核心,然后我们引出了使用async和await关键词以及coroutine装饰器去定义协程的两种…
收起列表
-
- 视频:4-1 tornado提供了哪些功能 (04:44)
- 视频:4-2 同步、异步、阻塞和非阻塞 (07:34)
- 视频:4-3 socket的非阻塞io请求html(1) (15:28)
- 视频:4-4 socket的非阻塞io请求html(2) (13:37)
- 视频:4-5 select、poll和epoll (21:09)
- 视频:4-6 我们自己去实现事件循环 (08:30)
- 视频:4-7 什么是协程 (17:05)
- 视频:4-8 AsyncHttpClient异步http请求 (14:45)
- 视频:4-9 tornado实现高并发的爬虫 (26:36)
第5章 tornado的web基础11 节 | 174分钟
本章介绍torando的web框架的主要模块,本章节我们将会涉及到tornado进程web开发的主要模块,为什么我们不能再tornado中写阻塞的io接口、以及tornado的几个核心模块的代码结构,让大家可以和上一章的知识点融合起来,本章节我们将会体会到options、settings、url的映射、UI模块和tornado的模板、RequestHandler等 …
收起列表
-
- 视频:5-1 tornado之helloworld (13:16)
- 视频:5-2 tornado中为什么不能写同步的方法 (04:10)
- 视频:5-3 tornado中的url配置 (20:57)
- 视频:5-4 define、options、parse_comand_line (08:10)
- 视频:5-5 RequestHandler常用方法 (29:11)
- 视频:5-6 RequestHandler的子类 (14:17)
- 视频:5-7 tornado的template (20:47)
- 视频:5-8 购物车列表页-template常用功能 (28:17)
- 视频:5-9 template之页面继承和重载 (08:06)
- 视频:5-10 tornado模板中UIModule (22:11)
- 视频:5-11 tornado的settings (03:48)
第6章 aiomysql完成留言板功能3 节 | 44分钟
本章节我们使用前面介绍到的tornado的基础知识,同时结合aiomysql异步mysql驱动去完成一个留言板的功能。
收起列表
-
- 视频:6-1 tornado完成html的访问…. (09:03)
- 视频:6-2 aiomysql完成数据的读写…. (21:06)
- 视频:6-3 数据的提交和修改 (13:40)
第7章 peewee的功能介绍6 节 | 87分钟
本章节主要内容包括三个部分: 1.介绍我们为什么会选择peewee作为课程的orm,以及如何通过peewee去快速的完成数据的交互,比如数据保存、删除、查询等 2. peewee-asyn,因为peewee本身的接口是同步,所以我们需要peewee-async去将peewee的功能集成到tornado中 3. 数据库设计,通过前面的需求…
收起列表
-
- 视频:7-1 为什么我们会选择peewee作为课程的orm (04:40)
- 视频:7-2 model的定义和表的自动生成 (17:23)
- 视频:7-3 model的数据保存 (14:11)
- 视频:7-4 peewee查询数据 (22:17)
- 视频:7-5 数据更新和删除 (10:23)
- 视频:7-6 通过peewee-async集成到tornado中 (17:11)
第8章 wtforms集成到tornado中3 节 | 51分钟
web系统开发中很重要的一个模块是表单验证,本章节我们将会将wtforms集成到tornado中,通过学习wtforms我们将很容易的完成表单的验证以及如何通过wtforms生成html
收起列表
-
- 视频:8-1 wtforms定义form表单并验证 (20:23)
- 视频:8-2 peewee保存wtforms验证后的数据 (14:47)
- 视频:8-3 wtforms输出成html (15:01)
第9章 restful api、需求分析和代码结构设计3 节 | 37分钟
本章节我们将介绍restful api、对系统进行需求分析后对课程的代码结构进行设计。
收起列表
-
- 视频:9-1 restful api介绍 (24:05)
- 视频:9-2 需求分析。 (03:50)
- 视频:9-3 代码结构设计 (08:47)
第10章 用户登录和注册12 节 | 200分钟
本章节我们将通过登录和注册功能去打开tornado异步编程之旅,本章节我们将接触到如何通过AsyncHttpClient去异步的完成短信发送,在本章节中我们也将通过peewee-async去完成异步的mysql数据入库,我们会通过自定义分布式session的方式去完成session的分布式保存。 …
收起列表
-
- 视频:10-1 restful api格式规范 (07:52)
- 视频:10-2 通过requests和云片网api发送短信 (17:30)
- 视频:10-3 AsyncHttpClient异步发送短信 (08:24)
- 视频:10-4 tornado集成异步短信发送接口 – 1 (16:05)
- 视频:10-5 tornado集成异步短信发送接口 – 2 (16:15)
- 视频:10-6 tornado集成异步短信发送接口 – 3 (17:29)
- 视频:10-7 手机号码注册-1 (19:57)
- 视频:10-8 手机号码注册-2 (17:46)
- 视频:10-9 联调短信发送和注册功能 (19:24)
- 视频:10-10 json web token的原理 (21:38)
- 视频:10-11 用户登录 -1 (18:51)
- 视频:10-12 用户登录-2 (18:26)
第11章 小组相关功能开发22 节 | 283分钟
本章节我们会开发社区小组功能,我们可以新建小组,加入小组、审核小组、评论和回复等功能,通过本章节我们不只能学习到如何去异步的保存数据库记录,还能学习到如何将富文本集成到tornado中,也会学习到peewee的更多功能比如get_related和model_to_dict等方法,以及aiofiles去异步的保存文件。tornado的authenticated装饰…
收起列表
-
- 视频:11-1 tornado的authenticated装饰器原理 (13:59)
- 视频:11-2 python装饰器的原理详解 (15:41)
- 视频:11-3 重写tornado的authenticated装饰器来支持await模式 (22:23)
- 视频:11-4 通过aiofiles保存图片文件 (17:59)
- 视频:11-5 通过aiofiles保存图片文件-2 (15:39)
- 视频:11-6 联调新建小组功能 (07:46)
- 视频:11-7 通过model_to_dict异步的序列化小组列表 (21:18)
- 视频:11-8 联调小组列表页 (08:49)
- 视频:11-9 申请加入小组功能 (19:13)
- 视频:11-10 申请加入小组功能-前端联调 (02:10)
- 视频:11-11 获取小组详情 (08:19)
- 视频:11-12 获取小组详情-前端联调 (03:13)
- 视频:11-13 发帖相关功能的表结构设计 (04:57)
- 视频:11-14 小组发帖-tornado接口 (17:57)
- 视频:11-15 如何集成ueditor富文本到tornado中 (17:00)
- 视频:11-16 获取小组内的帖子和热门帖子 (10:22)
- 视频:11-17 获取帖子详情 (12:58)
- 视频:11-18 获取帖子详情-前端联调 (05:41)
- 视频:11-19 帖子的评论功能-1 (14:44)
- 视频:11-20 帖子的评论功能-2 (15:28)
- 视频:11-21 帖子的回复功能和前后端联调 (18:35)
- 视频:11-22 评论点赞功能 (07:52)
第12章 问答相关功能开发6 节 | 57分钟
本章节我们完成问答相关功能的开发,包括通过peewee去过滤和排序数据。本章节的相关功能我们会使用前面学习到的知识点来巩固已经学习到的知识点
收起列表
-
- 视频:12-1 model设计 (06:34)
- 视频:12-2 新建提问 (16:03)
- 视频:12-3 获取问题列表 (05:14)
- 视频:12-4 获取问题详情.. (08:12)
- 视频:12-5 回复和获取问题的回复 (10:24)
- 视频:12-6 获取回答的回复 (10:23)
第13章 个人中心相关功能开发11 节 | 120分钟
本章节完成个人中心相关功能的开发,在个人中心中我们会接触到如何去确保密码加密,个人中心相关的功能我们将会进一步学习到aiofiles、以及peewee的PassworField等功能
收起列表
-
- 视频:13-1 修改个人信息接口 (25:18)
- 视频:13-2 基本信息修改-前端联调 (03:26)
- 视频:13-3 头像修改接口 (10:26)
- 视频:13-4 头像修改功能-前后端联调 (03:47)
- 视频:13-5 修改个人密码 (11:49)
- 视频:13-6 修改个人密码-前端联调 (02:46)
- 视频:13-7 个人消息接口-1 (21:36)
- 视频:13-8 个人消息接口-2.. (16:53)
- 视频:13-9 消息相关接口-前后端联调 (01:48)
- 视频:13-10 处理用户的加入小组申请 (18:01)
- 视频:13-11 处理用户的加入小组申请-前端联调 (03:59)
第14章 部署上线2 节 | 44分钟
部署是一个系统开发的最后阶段,在本章节中我们将会通过部署线上的centos系统来部署tornado服务,在本章节中我们会讲解到nginx安装配置、mysql安装和配置以及如何将nginx和tornado部署运行起来。
收起列表
-
- 视频:14-1 阿里云(centos)的生产环境部署-1 (21:37)
- 视频:14-2 阿里云(centos)的生产环境部署-2 (22:08)
第15章 第十五章 总结和展望7 节 | 31分钟
本章节我们将对课程的知识点进行梳理和总结。
收起列表
-
- 视频:15-1 tornado-课程总结 (12:01)
- 视频:15-2 高并发接下来我们应该怎么学习? (18:21)
- 作业:15-3 nginx 在 tornado 运行中起什么作用?
- 作业:15-4 【讨论题】tornado 中的 locks 问题
- 作业:15-5 tornado是否能单独使用用于部署django应用?
- 作业:15-6 【实战作业】使用aioredis将redis的操作也异步化
- 作业:15-7 【讨论题】tornado 如何打造一个 web 聊天室?