17 Commits

Author SHA1 Message Date
benoitc
9bc19c2c86 wsgi.multiprocess depends on number of workers. 2010-06-22 19:24:43 +02:00
benoitc
da91ec5e93 fix issue #63. thanks! 2010-06-17 00:10:05 +02:00
benoitc
c4a77a7e32 fix config bug 2010-06-03 16:11:19 -04:00
benoitc
1ae47ef82f fix rebase 2010-06-03 16:11:18 -04:00
benoitc
516adafcbe fix some errors & add headers. unitests still broken 2010-06-03 16:11:17 -04:00
Paul J. Davis
8ddf3e856e Fix up a couple minor bugs. 2010-06-03 16:11:16 -04:00
Paul J. Davis
bcaf21b62c Fix async worker integration. 2010-06-03 16:11:16 -04:00
Paul J. Davis
f02cbc10ed Playing with simplehttp. 2010-06-03 16:10:27 -04:00
benoitc
d9a2579613 naive working integration of simplehttp parser. async worker is slower
than the non async actually for unkown reason and slower than with old
parser.
2010-06-03 16:09:04 -04:00
benoitc
62540cffaa commit changes from @davisp + some fixes 2010-05-22 21:11:25 +02:00
Paul J. Davis
036f8b50d9 Major refactor of the configuration mechanics.
* All configuration and bootup is handled by the Application objects.

* There is now a strict ordering on the precedence of configuration
settings:

  1. Each option is given a default value of some sort in options.ini

  2. Any detectable framework configuration settings override the hard
     coded defaults for options. Currently, only Paster applications
     have support for this.

  3. Anything that is specified in a Gunicorn configuration file (by
     default gunicorn.conf.py) overrides what was possibly set by a
     framework specific configuration source.

  4. Anything specified on the command line reins supreme. The command
     line is the final authority on a given configuration option.
     Though, not all configuration options are available via command
     line.

* Configuration metadata is pulled from an options.ini. In the future I'll
use this to build the example gunicorn.conf.py and the config.rst file
in docs/site/config.rst.

I haven't tested the differences thoroughly. The next item on my agenda
is to figure out a way to start testing Gunicorn that doesn't make my
eyes bleed.
2010-05-19 13:39:37 -04:00
Paul J. Davis
0a46d09c6e Avoid a deadlock when the acceptor loop raises.
An out of file descriptors error was causing the async acceptor loops to
die. The notification process was unaffected so the workers didn't die.

Async workers hitting an error in the acceptor now kill themselves and
rely on the arbiter to restart a new worker in their stead.
2010-05-11 23:33:48 -04:00
benoitc
5b2f98fca4 fix erros spotted by pyflakes 2010-04-22 19:41:29 +02:00
benoitc
090bb8fe29 add timeout support 2010-04-22 19:07:23 +02:00
benoitc
7f36bc1bbd ignore connection reset 2010-04-22 11:54:34 +02:00
Paul J. Davis
0c935d06c7 Got the Sync and Eventlet workers running. 2010-04-15 21:20:17 -04:00
Paul J. Davis
51f1f22665 Refactoring worker code.
Also went through gunicorn.main lightly.
2010-04-15 20:08:28 -04:00