python-web架构

1.tonardo----

多并发、轻量级应用, “非阻塞”的web 容器。类似tomcat。这个大家太熟悉了,就不多说了。

2.Twisted----

Twisted 是一个Python 应用程序和库文件的集成套件。其中包括全套页面服务器应用程序和基于文本模式的游戏引擎。还有一些诸如对数据流进行处理的模块。是一个异步的网络开发框架,其中包含可以独立运行的服务器。类似tomcat。

3.django----

一个web开发的框架。类似struts。admin功能号称是django的杀手级特性;用户通过admin输入数据,程序员开发前台的模式。另外它的友好的URL、方便的template、MVC也是亮点。

部署方式2种:利用mod_python将django运行在apache进程中,还有一种是webserver(lighttpd和nginx)+fastcgi。后者更轻量级些,安全性更好。而前者更主流,稳定性更高。

但,apache的mod_wsgi配置起来麻烦,内存占用还大

4.CherryPy----是一个基于Python的面向对象的HTTP框架。使用CherryPy来开发Web Application是非常轻松的。但CherryPy并没用提供一种类似于PHP的templating语言机制。它所做的全部工作就是以尽可能少的忙乱将 Web服务器与您的 Python 代码连接。不是依靠 Apache 或者另外的 Web 服务器,而是运行它自己的小型的基于Python 的 Web 服务器。

5.uWSGI----uWSGI 是一个快速的、纯C语言开发的、自维护的、对开发者友好的 WSGI 服务器,旨在提供专业的Python web应用发布和开发。自创了一个uwsgi的协议,据说该协议大约是fcgi协议的10倍那么快。uWSGI的主要特点如下:

超快的性能;

低内存占用(实测为apache2的mod_wsgi的一半左右);

多app管理;

详尽的日志功能(可以用来分析app性能和瓶颈);

高度可定制(内存大小限制,服务一定次数后重启等)。

你可能感兴趣的:(python)