由于Python的简洁 易读 强大 高效  现在Python应用在文件处理、网络编程、数据库编程、游戏、Web开发、数据分析、机器学习等各个领域。

就Web开发而言,为了提高开发效率,应运而生了很多框架,如Django、Flask、Tornado、Web2py等。

框架很多,根据业务需求、选择适合的框架。

1、Django

最早接触Django,在我心中的形象是:Web框架界的变形金刚

Django的MVT架构、自带ORM、强大的Admin后台管理、自带数据库、还自带开发测试用的服务器、不得不说服务周到。

如此大而全,重量级的Django给开发者提供了超高的开发效率。

淌着Python血液

MVT三大轮子 连接浏览器 数据库开跑

一身装备 可变形 可扩展

多领域 跨平台 协调作战

自我测试 自我管理 自我保护

友好 开放 国际化

装备很多:
用户认证 缓存 日志 邮件 组织 分页 消息 序列化 会话 网站地图 静态文件处理 数据验证
Django支持第三方扩展:

比如:富文本编辑器 缓存 全文检索 celery等

Django项目布署 用nginx做静态资源代理、负载均衡 可以提高高并发能力。

一些Web项目开发 无论用户量、服务群体、上来总谈高并发。没用户 天天愁高并发问题 还没解决也许项目已经黄了。

项目有了、业务有了、用户有了、性能优化、高并发顺势解决嘛。

当然一些大型网站,在高性能的要求下,框架的各个部分往往都需要自己定制,这样用Django也就没有太大优势。

2、Falsk

相较于Django ,Falsk属于轻量级Web框架,也称‘microframework’ 。

Flask一个简单的核心,基于Werkzeug WSGI工具箱和Jinja2 模板引擎。其他功能开发者根据业务需求 与喜好 添加。

如此 Falsk 自由、灵活、可扩展性很强。很适用于开发小型应用、开发大型网站也没有压力,自己设计架构、选择合适第三方扩展,各方面性能完全不输Django。

常用拓展包:wtf、sqlalchemy、login、script、migrate、mail

3、Tornado

传说中实现高并发、高性能的框架。Tornado的全称是Torado Web Server,可用作Web服务器,同时也是一个Python Web的开发框架。

Tornado两大核心模块:

iostream :对非阻塞式的 socket 的简单封装,用来处理 socket 的异步读写
ioloop :核心的 I/O 循环。基于 epoll,可以高效的响应网络事
其作为Web框架的主要模块
web:包含了 Tornado 的大多数重要的功能
escape :XHTML, JSON, URL 的编码/解码方法
template :基于 Python 的 web 模板系统
httpserver : 非阻塞 HTTP server
httpclient : 异步 HTTP client 用来和web 及 httpserver 协同工作
auth :第三方认证的实现
locale:针对本地化和翻译的支持
等等
Tornado 走的少而精的路子,除了Web开发需要的基本模块,剩下的则都需要开发者自己扩展。比如需要ORM支持,那自己来扩展
Python web框架很多,在于精通。选择适合自己的,开始搞起来。
我做项目用的多的还是Django,不自己重复造车轮子嘛。
题外话:
目前有一些公司选择Go语言 做所谓的高性能的开发
Go语言 号称可解决现今多核心处理器这一大挑战。
Go语言 专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。
语言皆是工具
框架提高效率的工具
套用CSDN每天的鸡汤:
编程之久除了算法和数据结构,什么也不属于我们。
编程就是算法和数据结构,算法和数据结构是编程的灵魂。
算法和数据结构就是编程的一个重要部分,你若失掉了算法和数据结构,你就把一切都失掉了。
真的不知道开发者还剩下什么,当机器可以自己优化数据结构与算法,也许我们就真的只剩下灵魂了。

Python web后端开发框架 Django 、Flask、Tornado相关推荐

  1. python twisted和flask_浅谈Python Web 框架:Django, Twisted, Tornado, Flask, Cyclone 和 Pyramid...

    Django 是一个高级的 Python Web 框架,支持快速开发,简洁.实用的设计.如果你正在建一个和电子商务网站相似的应用,那你应该选择用 Django 框架.它能使你快速完成工作,也不必担心太 ...

  2. python web框架简介Bottle Flask Tornado

    Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. ? 1 2 3 4 pip inst ...

  3. [Link]选择一个 Python Web 框架:Django vs Flask vs Pyramid

    选择一个 Python Web 框架:Django vs Flask vs Pyramid

  4. 如何用python做后端写网页-flask框架

    如何用python做后端写网页-flask框架 什么是Flask 安装flask模块 Hello World 更深一步:数据绑定 后端传入数据 从前端获取数据 数据库连接 screen 创建后台 查看 ...

  5. python web项目(django+Layui+mysql)

    python web项目(django--+Layui+mysql) 1.结果图 2目录结构 3.开干 4.总结 为了完成期末作业,做的一个学生成绩管理系统,采用django+Layui+mysql5 ...

  6. Django/Flask/Tornado三大web框架性能分析

    写在前面: 本文的数据涉及到之前遇到过的问题,大概一次 http 请求到收到响应需要多少时间.这个问题在实际工作中与框架有比较大的关系,因此特别就框架的性能做了一次分析. 这里使用之前的一个报告数据: ...

  7. Python学习(四)后端开发框架django

    常见python web开发框架: web.py Django Pylons Tornado Bottle django菜鸟教程 一.django项目创建与启动 1.安装django pip inst ...

  8. 两个Python web框架:Django Tornado比较

    就是说它作为 web 框架比 Django 简单,又支援异步 IO,且更不需要前端的 webserver ? 我已经混乱了, Tornado是 Nginx.Django.Node.js 的结合体?又或 ...

  9. Web后端学习笔记 Flask(1)基础知识

    基础的准备 1. 使用的python版本 python3.6 2. pycharm编辑器 3. 安装python虚拟环境: python中的虚拟环境: python中的虚拟环境相当于一个抽屉,在这个抽 ...

最新文章

  1. tiny4412学习之u-boot启动过程
  2. 这个新型AI电子器件没有硅!北航32岁教授共同一作,能模拟大脑神经元,还登上了Science...
  3. 卫星导航系统脆弱性评估与对策
  4. php ajax实现的二级(多级)联动菜单(2008-10-21,11:36:08)
  5. IOS小技巧–用runtime 解决UIButton 重复点击问题
  6. Xcode7 UI自动化测试详解 带demo UITests
  7. Hive 05_hive变量、动态分区
  8. JAVA程序设计----关于字符串的一些基本问题处理
  9. ps -ef 输出结果的具体含义
  10. g++编译时:No such file or directory
  11. 02 button的练习
  12. wince模拟器访问网络_在Wince模拟器接入网络的方法
  13. python列表去括号_python的常用序列
  14. C#运行时的相互关系
  15. HDU 5701:中位数计数
  16. 想打造一款成功的移动应用?你最需要关注性能指标!
  17. php js 获取 客户端ip地址,JavaScript获取客户端IP的方法(新方法)
  18. 构建手机apk的过程
  19. 分享一个棋力很强的象棋应用和一个强大的开局库
  20. ENVI学习总结(十二)——基于改进的 CASA 模型反演 NPP

热门文章

  1. css position:absolute 父元素高度塌陷
  2. textarea 赋值 文本换行显示
  3. 直观地简单理解Tarjan算法(寻找有向图中的强连通图)
  4. OpenMp并行计算技术的简介
  5. 太好玩了!用Python做音乐节奏可视化!
  6. 在Virtualbox环境下win10与虚拟机通过FileZilla传输文件(FTP传输)
  7. 照着书敲linux下载安装命令?大汇总来咯!!!
  8. oracle数据文件全部丢失,oracle 数据文件,控制文件和参数文件全部丢失恢复
  9. 前端需要了解的计算机网络知识, 这一篇就够了!(图文并茂,万字长文!)
  10. C#笔记——【面向对象实战】(一)基于OPP设计新体育彩票选号器