Ticket #3290 defect new
Epoll reactor pauses for 10-15 seconds during high connection volume
| Reported by: | kvogt | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | core | Keywords: | epoll |
| Cc: | exarkun | Branch: | |
| Author: | Launchpad Bug: |
Description
I've included sample code below.
Basically, when you flood the reactor with a couple thousand connections, the strace shows that the process blocks on epoll for 10-15 seconds. Some connections eventually time out instead of being accept()'d by the reactor.
Make sure you have lots of fd's handy:
# ulimit -n 65536
Run the attached snippet with:
# twistd --python test.py --reactor epoll
Then test with:
# ab -c10000 -n10000 http://127.0.0.1/2000/bench
And tail the log:
# tail -f twistd.log
Attachments
Change History
Note: See
TracTickets for help on using
tickets.

