跳转到主要内容

UNIX下的WSGI HTTP服务器

项目描述

grainbow(绿色彩虹)是UNIX下的一个WSGI HTTP服务器,适用于睡眠应用程序。它基于Gunicorn,但设计用于处理期望长请求/响应时间或慢客户端的应用程序。对于其他应用程序,您应该使用gunicorn,因为它更容易调试。

功能

  • 专为WSGI设计

  • 基于Gunicorn构建,继承了其进程/套接字管理功能,如透明升级和Python配置DSL。

  • 即时解码分块传输,允许通过HTTP进行上传进度通知或基于流的协议

  • 支持EventletGevent

应用

安装

Grainbows需要Python 2.x,版本高于2.5。

从源代码安装

$ python setup.py install

或从Pypi安装

$ easy_install -U grainbows

默认情况下,grainbows使用Gunicorn仲裁者,因此您不会获得任何好处。您需要安装EventletGevent来使用并发功能。

do

$ easy_install -U eventlet

如果您想使用gevent,将eventlet替换为gevent

用法

对于WSGI应用程序

要启动与 Grainbows 打包的示例应用程序

$ cd /path/to/grainbows/examples/
$ grainbows websocket:app

然后转到 http://localhost:8000 查看结果。

注意:默认情况下,配置设置为使用 eventlet。如果您想使用 gevent 进行测试,请编辑 grainbows.conf.py 文件,将 use="eventlet" 替换为 use="gevent"

模块 test_keepalive:app 指定了完整的模块名和 WSGI 可调用函数。您可以用您 PYTHONPATH 中可用的任何内容替换它,如下所示

$ cd ~/
$ grainbows -c /path/to/configfile.py awesomeproject.wsgi.main:main_app

完整的命令行用法

$ grainbows --help
Usage: grainbows [OPTIONS] APP_MODULE

Options:
  --use=USE             method to use (eventlet, gevent)
  -c CONFIG, --config=CONFIG
                        Config file. [none]
  -b BIND, --bind=BIND  Adress to listen on. Ex. 127.0.0.1:8000 or
                        unix:/tmp/gunicorn.sock
  -w WORKERS, --workers=WORKERS
                        Number of workers to spawn. [1]
  -p PIDFILE, --pid=PIDFILE
                        set the background PID FILE
  -D, --daemon          Run daemonized in the background.
  -m UMASK, --umask=UMASK
                        Define umask of daemon process
  -u USER, --user=USER  Change worker user
  -g GROUP, --group=GROUP
                        Change worker group
  -n PROC_NAME, --name=PROC_NAME
                        Process name
  --log-level=LOGLEVEL  Log level below which to silence messages. [info]
  --log-file=LOGFILE    Log to a file. - equals stdout. [-]
  -d, --debug           Debug mode. only 1 worker.
  --version             show program's version number and exit
  -h, --help            show this help message and exit

对于 Django 应用程序,请使用 grainbows_django 命令行;对于与 Paste 兼容的应用程序(PylonsTurboGears 2 等),请使用 grainbows_paste。有关更多信息,请参阅 Gunicorn 网站上的 用法 页面。

配置文件

需要一个配置文件来设置 Grainbows 特定的设置。示例可以在 此处 找到

use = "eventlet"
worker_connections = 1000

您还可以配置其他设置,有关详细信息,请参阅 Gunicorn 配置 页面。

开发

您可以在 Github 上获取源代码

http://github.com/benoitc/grainbows/

并在 跟踪器 上发送您的反馈。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

grainbows-0.1.3.tar.gz (13.0 kB 查看散列)

上传时间

由以下机构支持