天天看点

Python引力波火了 你该了解的开源框架

今年年初,有一件科学界的大事儿曾刷爆朋友圈:引力波的发现。这是ligo首次直接探测到引力波和首次观测到双黑洞碰撞与并合,探测到的引力波是由13亿光年之外的两颗黑洞在合并的最后阶段产生的,经过13亿光年的时空旅行,最后被美国的“激光干涉引力波天文台”(ligo)的两台孪生引力波探测器探测到的。

Python引力波火了 你该了解的开源框架

虽然后期有人对此次“单次引力波发现”产生质疑,但是在it圈,它还捧火了一个一个东西:python。今天我们就来看看,在github等开源网站中最受欢迎的python开源框架都有哪些?

1.django

django是一款用python语言写的免费开源的 python web应用开发框架,它遵循模型 -视图-控制器(mvc)的架构模式。它是由非营利django维护软件基金会(dsf)和3条款bsd许可下可用,鼓励快速发展和实用的设计。

Python引力波火了 你该了解的开源框架

django主页

django同时是一款在数据库功能、后台功能、末班系统、网址匹配、缓存系统等方面有“先天”优势的开源框架。它可以通过几行简单的代码就让你的网站拥有一个强大的后台,轻松管理你的内容;强大,易扩展的模板系统,设计简易,代码,样式分开设计,更容易管理;如果与memcached或其它的缓存系统联用,更出色的表现,更快的加载速度。

同时,django也可以与jython运行在任何j甲骨文的java ee应用服务器上;尤其在管理能力上十分突出。

2.twisted

twisted是一款事件驱动的网络编程框架,支持许多常见的传输及应用层协议,如tcp、udp、ssl/tls、http、imap、ssh、irc以及ftp。还支持unix domain sockets,在mit许可下应用。

twisted附带了一个可以web服务器上运行的wsgi,它能够为其他python web应用程序允许开发人员使用的服务器定制http服务。

Python引力波火了 你该了解的开源框架

twisted事件驱动框架

据了解,twisted诞生于2000年初,在当时的网络游戏开发者看来,无论他们使用哪种语言,手中都鲜有可兼顾扩展性及跨平台的网络库。如今,twisted依然属于一个事件驱动型的网络引擎,这里程序的执行流由外部事件来决定。

3.tornado

tornado源意为龙卷风,这里是一款可扩展的,非阻塞的web服务器,应用开发框架,以及异步联网库。它最初是在friendfeed开发(在2009年被facebook收购)。tornado是高度灵活,专门设计为开发人员和第三方工具厂商提供了一个开放环境。已有部分应用程序接口可以利用并附带参考书目,内容从开发环境接口到连接实现。另外,它还配备了一个wsgi服务器,其他wsgi python应用程序(和框架)也可以使用。在开源和apache 2.0许可下可用。

Python引力波火了 你该了解的开源框架

tornado主页

有开发者认为,tornado既是一个web server,也是web framework。而它作为web server 采用的是asynchronous io的网络模型,这是一种很高效的模型。tornado作为web server,提供了web framework的api,可以来直接构建自己的web程序。

自从2009年9月10日发布以来,tornadotornado已经获得了很多社区的支持,并且在一系列不同的场合得到应用。除friendfeed和facebook外,还有很多公司在生产上转向tornado,包括quora、turntable.fm、bit.ly、hipmunk以及myyearbook等。

除了以上三种之外,还有diesel、flask、cubes、kartograph、pulsar、web2py、falcon、dpark、buildbot、zerorpc、bottle、webpy、scrapy还有很多用于机器学习应用场景的开源框架,笔者在这里就不一一介绍了。

本文作者:佚名

来源:51cto