benoitc
fcd9d04515
stop to accept more requests when maximum accepted is achieved
...
this change makes sure that a worker don't handle more requests than it can
achieved. The new workflow is quite more simple:
listeners are put in the poller. On read we try to accept on them.
When a connection is accepted it is put in the execution queue
When a request is done and the socket can be kept alived, we put it in the
poller, on read event we will try to handle the new request. If it is not put
out of the poller before the keepalive timeout the socket will be closed.
if all threads are busy we are waiting until one request complet. If it
doesn't complete before the timeout we kill the worker.
fix #908
2014-12-20 11:16:58 +01:00
benoitc
fd95f66f2d
fix run loop in sync worker
2014-12-19 08:59:22 +01:00
benoitc
d1a0973225
send SIGQUIT/SIGTERM only once to the workers
...
there is no need to send more than once the signal to the workers when
exiting. With this patch we are sending once the QUIT/TERM signal and then
wait until the graceful timeout or until there are workers alive.
fix #655
2014-12-19 08:03:22 +01:00
Mark Lee
e63df69229
Clarify concurrent.futures requirement error message
...
Specify which PyPI package needs to be installed in order for the gthread
worker implementation to work on Python < 3.2.
2014-12-08 03:21:31 +02:00
Berker Peksag
44b090fa47
Remove an incorrect note from instrumentation.txt.
2014-12-01 08:52:17 +02:00
Berker Peksag
9f72be235c
Add missing period.
2014-12-01 08:45:20 +02:00
Berker Peksag
9a3d580c52
Simplfy documentation index page.
2014-12-01 07:08:38 +02:00
Berker Peksag
4cab542097
Resort docs index.
2014-12-01 07:08:18 +02:00
Berker Peksag
6325898611
Fix syntax highlighting in configure.rst.
2014-12-01 07:07:55 +02:00
Berker Peksag
2043779b23
Improve the "Running Gunicorn" command.
2014-12-01 07:06:55 +02:00
Berker Peksag
761a1e5b76
Add ref links to configure.rst and faq.rst.
2014-12-01 07:06:18 +02:00
Berker Peksag
f4083fc72b
Fix history header in news.rst.
2014-12-01 07:05:39 +02:00
Berker Peksag
963a677f31
Fix settings reference.
2014-12-01 07:04:57 +02:00
Berker Peksag
f0b9468ea3
Document statsd_* commands.
2014-12-01 07:04:10 +02:00
Berker Peksag
43d1eba3e3
Simplify README.rst.
2014-12-01 07:02:47 +02:00
Berker Peksag
7ce90373a8
Remove unused imports.
2014-12-01 07:00:02 +02:00
Randall Leeds
f3bb0e1e1d
Fix typo WSGIErrorsWraper -> WSGIErrorsWrapper
2014-11-30 20:54:30 -08:00
Berker Peksag
b8b0a87fee
Fix header in news.rst.
2014-11-30 08:49:20 +02:00
Berker Peksag
496c207a26
Fix ref URL of the pr role.
2014-11-30 00:39:00 +02:00
Berker Peksag
d12fc05de0
Added issue and pr roles.
...
This commit also split news.rst and 2014-news.rst. news.rst will
only contains latest unreleased version's changelog.
2014-11-30 00:39:00 +02:00
Benoit Chesneau
af4b1b9755
Merge pull request #946 from berkerpeksag/fix-namerror
...
Fix NameError in gunicorn/workers/gthread.py.
2014-11-24 23:06:59 +01:00
Benoit Chesneau
859a4b4bb4
Merge pull request #945 from berkerpeksag/flake8-cleanup
...
Use more Pythonic style in gunicorn/.
2014-11-24 23:06:34 +01:00
Berker Peksag
4713ef7f37
Pass a 'sent' parameter to Mock().
2014-11-24 23:07:46 +02:00
Matt Long
71f7d353f0
Use sent instead of response_length in access log
...
Previously, resp.response_length is used for the b atom of the access
log formatter. If the application does not set a content-length header,
response_length is left as `None`, resulting in b being set to the
fallback "-". resp.sent is a more reliable way to determine the number
of bytes in the response body.
2014-11-24 23:03:47 +02:00
Berker Peksag
6086e31d07
Fix NameError in gunicorn/workers/gthread.py.
2014-11-24 18:45:00 +02:00
Berker Peksag
56e7d15fb8
Use more Pythonic style in gunicorn/.
2014-11-24 18:43:21 +02:00
Benoit Chesneau
783984cabd
Merge pull request #944 from redspade/master
...
Added missing import for `platform` in tests/support.py for os x.
2014-11-24 15:06:19 +01:00
Sungho Ryu
53a4ea556f
Added missing import for platform in tests/support.py for os x.
2014-11-24 14:58:31 +01:00
Berker Peksag
194b2d68e3
Also update docs/source/news.rst for #845 .
2014-11-23 23:24:52 +02:00
Randall Leeds
cb7859caea
add news
2014-11-23 12:05:56 -08:00
Randall Leeds
ac3554cb91
remove whitespace
2014-11-23 11:57:20 -08:00
Berker Peksag
469b97a8b7
Merge pull request #943 from BFriedland/copyedits
...
Fixed typos/copyediting
2014-11-23 01:10:59 +02:00
BFriedland
05c6977122
Fixed typos
2014-11-22 14:18:56 -08:00
Berker Peksag
fcb700ca66
Merge pull request #941 from benoitc/unify-paste-logging
...
Set logconfig default to paster more trivially
2014-11-20 08:59:58 +02:00
Randall Leeds
1b0901d661
Set logconfig default to paster more trivially
...
Rather than using fileConfig twice and risking different defaults
and behavior around disable_existing_loggers (ref #902 ), simply
set the default logging config file to be the paster config file
if it has a logger section and let glogging set up the rest.
2014-11-19 15:26:26 -08:00
Randall Leeds
2f6aa7535c
Merge branch '867-fix-eventlet-shutdown'
2014-11-18 15:13:00 -08:00
Randall Leeds
2aabf48317
PEP8
2014-11-18 15:12:04 -08:00
Randall Leeds
415956da23
Fix eventlet shutdown to actively shut down the workers.
2014-11-18 15:12:04 -08:00
Randall Leeds
fcba1a6c1c
Merge pull request #770 from dwagon/731-umask
...
731 - Avoid creating world writable files
2014-11-17 19:03:01 -08:00
K Subramanian
d203d022f5
Add Note for async workers with Django
...
Django lazy loads URLConf during the first request.
2014-11-17 18:36:09 -08:00
Randall Leeds
3bffef06c2
Merge pull request #936 from minichate/nginx_signal_docs
...
Remove no-longer-true statement about matching Nginx signal handling
2014-11-12 21:17:54 -08:00
Randall Leeds
14bbd1cfce
comment formatting
2014-11-12 13:06:02 -08:00
Randall Leeds
96a15b38a8
Merge pull request #931 from laterpay/feature/921-ignore-async-handle_request-socket-error
...
Feature/921 ignore async handle request socket error
2014-11-12 13:05:09 -08:00
Christopher Troup
73aac61945
Remove no-longer-true statement about matching Nginx signal handling
2014-11-12 15:01:50 -05:00
Jonas Maurus
fbc1e29c72
use six.reraise to amend the traceback
2014-11-12 09:50:10 +00:00
Jonas Maurus
d0f1ff659f
fix #921 by passing socket.error on to the caller (where it will be ignored)
2014-11-11 10:13:09 +00:00
Stéphane Wirtel
ccb08b541d
Merge pull request #929 from wong2/dev
...
propagate proxy_protocol_info to keep-alive requests correctly, fix #923
2014-11-06 07:58:13 +01:00
wong2
f8902a6837
propagate proxy_protocol_info to keep-alive requests correctly, fix #923
2014-11-06 14:48:16 +08:00
benoitc
4c601ce447
optimize the sync worker
...
This change optimize the sync worker when we only have to listen on one
interface. While I'm here, I fixed a long and unnoticed outstanding issue when
we were accepting on multiple interfaces (wonder if someone really use it), at
some point soe interfaces were skipped.
2014-10-25 11:58:28 +02:00
Berker Peksag
c152ce0dd0
Add a versionadded directive to the sendfile documentation.
2014-10-20 20:17:30 +03:00