Skip to main content

WSGI HTTP Server for UNIX

Project description

grainbow ‘Green Rainbows’ is a WSGI HTTP Server for UNIX, for sleepy application. It’s based on Gunicorn but it’s designed to handle applications that expect long request/response times and/or slow clients. For other applications, you should use gunicorn, since it’s easier to debug.

Features

  • Designed for WSGI

  • Built on Gunicorn, inheriting its process/socket management features such as transparent upgrades and Python configuration DSL.

  • Decode chunked transfers on-the-fly, allowing upload progress notifications or stream-based protocols over HTTP

  • Support for Eventlet and Gevent .

Applications

Install

Grainbows requires Python 2.x superior to 2.5.

Install from sources:

$ python setup.py install

Or from Pypi:

$ easy_install -U grainbows

By default grainbows use Gunicorn arbiter, so you won’t have any benefits. You need to install Eventlet or Gevent to use concurrency features.

do:

$ easy_install -U eventlet

or:

$ easy_install -U gevent

Usage

for WSGI application:

To launch the example application packaged with Grainbows:

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

and then go on http://localhost:8000 to see the result.

Note : by default the configuration is set to use eventlet. If you want to test with gevent, edit grainbows.conf.py file and replace use=”eventlet” by use=”gevent”.

The module test_keepalive:app specifies the complete module name and WSGI callable. You can replace it with anything that is available on your PYTHONPATH like such:

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

For Django applications use the grainbows_django command line and for Paste compatible applications (Pylons, TurboGears 2, …) use grainbows_paste. See the usage page on Gunicorn website for more information.

Configuration file

A configuration file is needed to setup Grainbows specific settings. An example can be found here

use = "eventlet"
worker_connections = 1000

You can also configure other settings, see the Gunicorn configuration page for more details.

Development

You can get the source on Github :

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

And send your feedback on the tracker .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

grainbows-0.1.0.tar.gz (7.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page