zoukankan      html  css  js  c++  java
  • 浅谈Python Web 框架:Django, Twisted, Tornado, Flask, Cyclone 和 Pyramid

    Django 是一个高级的 Python Web 框架,支持快速开发,简洁、实用的设计。如果你正在建一个和电子商务网站相似的应用,那你应该选择用 Django 框架。它能使你快速完成工作,也不必担心太多的技术选择。它能提供从模版引擎到 ORM 所需的一切东西。用 Django 构建你的app 的时候,你必须要遵循 Django 的方式,这点像极了 Ruby on Rails 的 Rails 框架。有些人会觉得这样有点不爽,但在我看来这是极好的,毕竟我坚信:“约定优于机制”。相对于所有其他的库,Django 框架有最强的社区,这意味着可以轻松获得帮助。

    Flask 是基于 Werkzeug,Jinja 2 的 Python 轻量级框架(microframework)。注意——“microframework” 里的 “micro” 可能会产生误解。轻量级不意味着 Flask 是一个不成熟、不靠谱的库。它表示 Flask 的核心就是非常非常简单的。不像 Django 框架,它不会给你带来技术选择上的问题,你可以自由选择你喜欢的任何模版引擎或 ORM。即使它默认配备了 Jinja 模板引擎,你也随时可以自由选择。 在我看来,用 Flask 来编写 API 服务(RESTful rervices)是再好不过的。

    Twisted 是用 Python 实现的基于事件驱动的网络引擎框架。它是一个高性能的引擎,其快速的主要原因是一个被称为 deferred 的 object,Twisted 是建立在 deferred object 之上。对于不了解 deferred object 的人来说,deferred object 是通过异步架构实现的机制。Twisted 是很快速的,但是不适合编写常规的 WebApps。如果你想做一些底层网络的东西,Twisted 是你的好帮手。

    Tornado 是一个 Python Web 框架和异步网络库,最初是由 FriendFeed 开发的。Tornado 采用非阻塞网络 I / O 模型,可以处理数以千计的网络连接,这意味着对于 long polling 、WebSockets 和其他需要长时间实时连接的 apps 来说,Tornado 是一个理想的 Web 框架。Tornado 介于 Django 和 Flask 之间。如果你想要用 Django 或 Flask 写一些东西,但你想要一个更好的性能,你应该选择用 Tornado 框架。配合上合理的架构,它能很好的处理 C10K 问题。

    Cyclone 是用 Python 编写的一款异步非阻塞的轻量级 Web Server 框架。它实现了 Tornado 的 API,底层实现是基于 Twisted Protocol 的。现在,如果你想要 Twisted 的性能和易于编写常规的 webapps,那么请选择 Cyclone。相对于 Tornado 框架,我更喜欢 Cyclone。它有一个非常类似于 Tornado 的 API,实际上,它是 Tornado 的一个 fork 分支。但是问题就是它拥有的社区相对较小。Alexandre Fiori 是主要代码贡献者。

    Pyramid 是一个通用的,开源的 Python web 应用开发框架。其主要目标就是让 Python 开发人员更轻松的开发 web 应用程序。我没有用过 Pyramid 框架,但是我看过它的文档。据我了解,Pyramind 和 Flask 很相似,我认为可以用 Flask 框架的地方也可以用 Pyramid 框架,反之亦然。

    原文地址:dhilipsiva

  • 相关阅读:
    SharePoint 2013 安装.NET Framework 3.5 报错
    SharePoint 2016 配置工作流环境
    SharePoint 2016 站点注册工作流服务报错
    Work Management Service application in SharePoint 2016
    SharePoint 2016 安装 Cumulative Update for Service Bus 1.0 (KB2799752)报错
    SharePoint 2016 工作流报错“没有适用于此应用程序的地址”
    SharePoint 2016 工作流报错“未安装应用程序管理共享服务代理”
    SharePoint JavaScript API in application pages
    SharePoint 2016 每天预热脚本介绍
    SharePoint 无法删除搜索服务应用程序
  • 原文地址:https://www.cnblogs.com/caodneg7/p/10432899.html
Copyright © 2011-2022 走看看