在Github上,Sanic第一句介绍语就是:

“Sanic is a Flask-like Python 3.5+ web server that's written to go fast. ”

到底有多Fast?有人给出这样一组对比测试结果:

这个测试结果可不可信不好说,但根据很多人的评价,Sanic在性能上确实比较强劲。尽管Sanic 被称作Flask-like,其中的坑还是很多的。性能强劲这一点非常诱人,不过性能强劲不一定就好用的。

那么?Sanic性能到底有多强劲?它和Flask又有哪些却别?值不值得在实际生产中使用? 这里给大家推荐一个实验楼最新出的教程《异步 Web 框架 Sanic 设计与实现》,帮助大家认识Sanic。

这个教程适合有一定 Python 和 Flask 基础,想对 Web 框架和异步编程有进一步了解的同学。对,目的不是让你搞Sanic的,最主要是通过写Sanic对Python Web 框架和异步编程有更深入理解。

教程介绍

对 Sanic 进行分析,一步步实现这个高并发的异步 Web 框架。涉及到了协程、异步I/O、服务器原理、HTTP协议、路由、视图、异常处理等知识点。

知识点

  1. 掌握 Python 协程原理

  2. 深入 HTTP 协议

  3. 加深对 MVC 模式的理解

  4. 对 Web 开发框架有清晰的认识

效果演示

以下效果图只是最终我们在完成 Sanic 的设计与实现后添加的一个基于 Sanic 实现的简单的 数据库操作应用的效果。

数据添加页面及对应的后台数据表信息:

感兴趣的同学,可以点我进入教程学习。

相关推荐:

MyBatis 框架基础入门

Python3 实现火车票查询工具

Python3 实现色情图片识别

高德API + Python 解决租房问题

Python 破解验证码

更多免费教程,请进入shiyanlou.com

“脚踢各大Python Web框架”,Sanic真有这能耐么?的更多相关文章

  1. 2018年要学习的10大Python Web框架

    通过为开发人员提供应用程序开发结构,框架使开发人员的生活更轻松.他们自动执行通用解决方案,缩短开发时间,并允许开发人员更多地关注应用程序逻辑而不是常规元素. 在本文中,我们分享了我们自己的前十大Pyt ...

  2. python 异步Web框架sanic

    我们继续学习Python异步编程,这里将介绍异步Web框架sanic,为什么不是tornado?从框架的易用性来说,Flask要远远比tornado简单,可惜flask不支持异步,而sanic就是类似 ...

  3. python web框架介绍对比

    Django Python框架虽然说是百花齐放,但仍然有那么一家是最大的,它就是Django.要说Django是Python框架里最好的,有人同意也有人 坚决反对,但说Django的文档最完善.市场占 ...

  4. python web框架——扩展Django&tornado

    一 Django自定义分页 目的:自定义分页功能,并把它写成模块(注意其中涉及到的python基础知识) models.py文件 # Create your models here. class Us ...

  5. 一步一步理解 python web 框架,才不会从入门到放弃

    要想清楚地理解 python web 框架,首先要清楚浏览器访问服务器的过程. 用户通过浏览器浏览网站的过程: 用户浏览器(socket客户端) 3. 客户端往服务端发消息 6. 客户端接收消息 7. ...

  6. 浅谈Python web框架

    一.Python web框架 Web Framework,Ruby的世界Rails一统江湖,而Python则是一个百花齐放的世界,各种micro-framework.framework不可胜数,不完全 ...

  7. python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架

    Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...

  8. 微型 Python Web 框架: Bottle

    微型 Python Web 框架: Bottle 在 19/09/11 07:04 PM 由 COSTONY 发表 Bottle 是一个非常小巧但高效的微型 Python Web 框架,它被设计为仅仅 ...

  9. Python Web框架Tornado的异步处理代码演示样例

    1. What is Tornado Tornado是一个轻量级但高性能的Python web框架,与还有一个流行的Python web框架Django相比.tornado不提供操作数据库的ORM接口 ...

随机推荐

  1. day_6.6 py

    Tftp 下载器演示 2018-6-6 14:11:09 #!/usr/bin/env python #!--*--coding:utf-8 --*-- #!@Time :2018/6/6 11:55 ...

  2. MySQL语言 数据库练习题分解。

    一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...

  3. BZOJ 3224 - 普通平衡树 - [Treap][Splay]

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3224 Description 您需要写一种数据结构(可参考题目标题),来维护一些数,其中 ...

  4. POJ 1655 - Balancing Act - [DFS][树的重心]

    链接:http://poj.org/problem?id=1655 Time Limit: 1000MS Memory Limit: 65536K Description Consider a tre ...

  5. [No0000168]Excle只允许用户输入纯文本,禁止用户修改单元格样式、格式等

    背景:自己的模板给别人,让他填完信息上传到系统里,但别人经常不按模板的格式来填写,导致无法程序自动化.能不能在模板上把格式锁住,只允许输入纯文本,但不能改格式? 方法: 步骤一,创建你要的模板 其中, ...

  6. arcengine实现右键菜单打开/关闭所有图层

    参考资料:  http://developer.51cto.com/art/201104/256774.htm 参照后自己做的: 关于右键菜单的几个有价值的网址: http://blog.csdn.n ...

  7. Type Operators instanceof is used to determine whether a PHP variable is an instantiated object of a certain class/a class that implements an interface

    w 0-instanceof is used to determine whether a PHP variable is an instantiated object of a certain cl ...

  8. [http][ident] ident协议

    读<http权威指南>提到了ident协议. 接受客户端连接 在这个步骤中,包括建立连接,这里Web服务器可以随意拒绝或立即关闭任意一条连接.客户端主机名解析部分,服务器可以用“反向DNS ...

  9. 一种比较简单的实现ping的方式

    <span style="font-family: Arial, Helvetica, sans-serif;">头文件</span> <span s ...

  10. 动态补丁构建工具nuwa中的“坑”

    1. 继承android中的Application的类A1Application:并且A2Application继承自A1Application,并且配置在清单文件中name=".A2App ...