Question related to #91
See original GitHub issueHi,
This is a question related to #91. I did not want to mess up the discussion there:
I don’t know, if this helps, but I experience a situation where I run my WebDAV server on top of Cheroot.
Benchmarks show that it is very slow compared to using Gevent.
This only occurs when uploading a lot of files using File Explorer. macOS Finder behaves way better, so it is also related to the request sequence used (see mar10/wsgidav#149).
I am not sure what exactly is happening there, but increasing the thread count helps.
When it’s slow, the console output looks like timeouts every few seconds, so I figured it may be addressed by this issue
I tried with pip install git+https://github.com/cherrypy/cheroot.git@feature/91-non-blocking-sockets
and setting back to 10 threads, which I think is the default. but the performance did not increase compared to Gevent.
I you think this is related to issue 91, I can send more debug info or run test versions here.
Otherwise, simply close this…
Issue Analytics
- State:
- Created 4 years ago
- Comments:7 (5 by maintainers)
This is a major improvement compared to the previous runs (see this comment 3. and 4.). Copying 300 files à 1MB, using cheroot with 10 threads:
The first 200 files get copied pretty fast, so cheroot become usable with a low thread count for me now!
Same with 100 threads does not show much of a difference:![image](https://user-images.githubusercontent.com/41663/58040860-d98f2c00-7b36-11e9-8b5e-2b278677bcb3.png)
Still not quite as fast as gevent, but anyways:![image](https://user-images.githubusercontent.com/41663/58041083-7baf1400-7b37-11e9-8bd5-a35d34ff49c5.png)
Note that the raw PUT throughput seems not to be the problem. It’s more the handling of different involved WebDAV requests I assume.
Did only a smoke test, but it seems to be fixed. Thanks!