Python数据分析与可视化:实战案例解析
107
2023-10-25
【摘要】 本书摘自《零基础Python 从入门到精通》一书中第19章,第1.3节,编者是壹零快学。
19.1.3 Tornado
Tornado的完整名称是Tornado Web Server, 是一个用Python语言写成的Web服务器兼Web应用框 架,由FriendFeed公司在自己的网站FriendFeed中使用,被Facebook收购以后,该框架才以开源软件的形式开放给大众。
作为Web框架,Tornado十分轻量,类似于另一个Python Web框架Web.py,其拥有异步非阻塞IO 的处理方式。
作为Web服务器,Tornado有较为出色的抗负载能力,官方用Nginx反向代理的方式部署Tornado 和其他Python Web应用框架进行对比,结果它能承受的最大浏览量超过第二名近40%。
Tornado使用了异步非阻塞IO的编程方式,拥有强大的并发性能,但是这也带来了不少副 作用。不同于其他Web开发框架,有许多第三方的数据库引擎不能直接应用在Tornado上。幸好 Tornado官方和许多第三方开发者开发了不少适合Tornado的数据库引擎,不过相对于其他Web框架,Tornado的兼容性就没有任何优势了。
第 19 章 使用Django创建Web站点
19.1.4 Django
Django是一个开放源代码的Web应用框架,由Python写成。Django采用了MVT的软件设计模 式,即模型Model、视图View和模板Template。Django最初是被开发来用于管理劳伦斯出版集团旗下 的一些以新闻内容为主的网站的,并于2005年7月在BSD许可证下发布。这套框架以出生于比利时的吉卜赛爵士吉他手强哥·莱恩哈特(Django Reinhardt)的名字来命名。
Django的主要目标是让开发复杂的、数据库驱动的网站变得简单。Django注重组件的重用性和 “可插拔性”、敏捷开发和DRY法则(Don't Repeat Yourself)。在Django中Python被普遍使用,甚 至包括配置文件和数据模型。
Django框架的核心包括: 一个面向对象的映射器,用作数据模型(以Python类的形式定义)和 关系性数据库间的介质; 一个基于正则表达式的URL分发器; 一个视图系统,用于处理请求; 一个 模板系统。
核心框架中还包括:
◇ 一个轻量级的、独立的Web服务器,用于开发和测试。
◇ 一个表单序列化及验证系统,用于HTML表单和适于数据库存储的数据之间的转换。
◇ 一个缓存框架,并有几种缓存方式可供选择。
◇ 中间件支持,允许对请求处理的各个阶段进行干涉。
◇ 内置的分发系统允许应用程序中的组件采用预定义的信号进行相互间的通信。
◇ 一个序列化系统,能够生成或读取采用XML或JSON表示的Django模型实例。
◇ 一个用于扩展模板引擎的能力的系统。
Django 包含了很多应用在它的contrib包中,包括:
◇ 一个可扩展的认证系统。
◇ 动态站点管理页面。
◇ 一组产生RSS和Atom的工具。
◇ 一个灵活的评论系统。
◇ 产生Google站点地图(Google Sitemaps)的工具。
◇ 防止跨站请求伪造(Cross-Site Request Forgery)的工具。
◇ 一套支持轻量级标记语言(Textile和Markdown)的模板库。
◇ 一套协助创建地理信息系统(GIS)的基础框架。 Django于2008年6月17日正式成立基金会。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~