Python - Web 服务器
-
简述
Python 用途广泛,可以创建多种类型的应用程序以及驱动互联网或其他计算机网络的程序。互联网的一个重要方面是位于客户端服务器模型根部的 Web 服务器。在本章中,我们将看到一些使用纯 Python 语言创建的 Web 服务器。 -
Gunicorn
Gunicorn 是一个独立的 Web 服务器,它有一个中央主进程,负责管理已启动的不同类型的工作进程。然后这些工作进程直接处理和处理请求。所有这些都可以进行配置和调整,以适应生产场景的不同需求。重要功能
- 它支持 WSGI,可以与任何运行 Python 应用程序和框架的 WSGI 一起使用
- 它也可以用作 Paster(例如:Pyramid)、Django 的开发服务器、web2py 等的替代品
- 提供各种工作器类型/配置和自动工作器进程管理的选择
- 通过同步和异步工作器支持 HTTP/1.0 和 HTTP/1.1 (Keep-Moove)
- 附带 SSL 支持
- 可通过钩子扩展
-
CherryPy WSGI 服务器
CherryPy 是一个自包含的 Web 框架,因为它可以独立运行而无需额外的软件。它有自己的 WSGI、HTTP/1.1 兼容的 Web 服务器。由于它是一个 WSGI 服务器,它也可以用于为任何其他 WSGI Python 应用程序提供服务,而无需绑定到 CherryPy 的应用程序开发框架。重要功能
- 它可以运行任何在 WSGI 上运行的 Python Web 应用程序。
- 它可以处理静态文件,并且只能用于单独提供文件和文件夹。
- 它是线程池的。
- 它带有对 SSL 的支持。
- 它是一种易于适应、易于使用的纯 Python 替代方案,它健壮且可靠。
-
Twisted Web
它是 Twisted 网络库附带的 Web 服务器。Twisted 本身是“一个事件驱动的网络引擎”,而 Twisted Web 服务器运行在 WSGI 上,它能够为其他 Python Web 应用程序提供动力。重要功能
- 它运行 WSGI Python 应用程序
- 它可以像 Python Web 服务器框架一样运行,允许您使用该语言对其进行编程以实现自定义 HTTP 服务目的
- 它通过根据 HTTP 请求执行的 Python 脚本 (.rpy) 提供简单快速的原型设计能力
- 它带有代理和反向代理功能
- 它支持虚拟主机
- • 它甚至可以服务于 Perl、PHP 等