Issue33840
Created on 2018-06-11 21:10 by lguo, last changed 2022-04-11 14:59 by admin.
| Messages (4) | |||
|---|---|---|---|
| msg319347 - (view) | Author: Lisa Guo (lguo) | Date: 2018-06-11 21:10 | |
I'd like to re-open the discussion on pause_server/resume_server that's been discussed here: https://groups.google.com/forum/?utm_source=digest&utm_medium=email#!topic/python-tulip/btGHbh5kUUM with PR: https://github.com/python/asyncio/pull/448 We would like to set a max_connection parameters to a listening socket. Whenever it reaches this number with open accepted sockets, it stops accepting new connections until a user request is served, response sent back, and the connection closed. This is useful for a web application where the more user requests accepted and processed in-flight isn't necessarily better for performance. It would be great if we could dynamically change this value as well. Some more detailed behavior: - it can be either a per loop parameter, or per server parameter - the number of currently open accepted connections is counted against this limit - if max connection is reached, remove the listening socket from the loop so it back pressures new connections to kernel and other processes can take them - when total number of accepted connections drops below max connection, put the listening socket back in the loop - it can be dynamically configured but has no effect on currently already accepted connections (useful for graceful shutdown) Lisa |
|||
| msg319349 - (view) | Author: Yury Selivanov (yselivanov) * ![]() |
Date: 2018-06-11 22:56 | |
Do other frameworks (Tornado, Twisted, libuv/nodejs) have this functionality? |
|||
| msg319425 - (view) | Author: Lisa Guo (lguo) | Date: 2018-06-13 04:53 | |
Hi Yury, no, I'm not familiar with the other frameworks (libuv doesn't have this). I'll need to look into it. If anybody else knows, please comment as well. |
|||
| msg362589 - (view) | Author: Andrew Svetlov (asvetlov) * ![]() |
Date: 2020-02-24 14:24 | |
For server applications, the reverse proxy in front of the application can limit the connection limit. It is a good workaround because the proxy is required (and most likely is used already) for any non-trivial server app. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:59:01 | admin | set | github: 78021 |
| 2020-07-13 10:44:44 | xtreak | set | nosy:
- Janae147 |
| 2020-07-13 10:44:22 | xtreak | set | messages: - msg373589 |
| 2020-07-13 10:28:31 | Janae147 | set | nosy:
+ Janae147 messages: + msg373589 |
| 2020-07-08 15:54:51 | xtreak | set | messages: - msg373314 |
| 2020-07-08 15:54:38 | xtreak | set | messages: - msg373313 |
| 2020-07-08 15:41:19 | Deon257 | set | messages: + msg373314 |
| 2020-07-08 15:38:52 | Deon257 | set | nosy:
+ Deon257 messages: + msg373313 |
| 2020-02-24 14:24:25 | asvetlov | set | messages: + msg362589 |
| 2020-02-23 04:40:14 | fantix | set | nosy:
+ fantix |
| 2018-06-13 04:53:20 | lguo | set | messages: + msg319425 |
| 2018-06-11 22:56:53 | yselivanov | set | messages: + msg319349 |
| 2018-06-11 21:10:29 | lguo | create | |
