New submission from Martin Kirchgessner :
While using `telnetlib` I sometimes received unusually "large" messages (around
1Mb) from another process on the same machine, and was surprised `read_until`
took more than a second. After instrumenting I discovered such messages were
received at roughly 500kbyte/s.
I think this low throughput comes from two implementation details:
- `Telnet.fill_rawq` is calling `self.sock.recv(50)`, whereas 4096 is now
recommended
- the `Telnet.process_rawq` method is transferring from raw queue to cooked
queue by appending byte per byte.
For the latter, transferring by slices looks much faster (I'm measuring at
least 5x). I'm preparing a PR.
--
components: Library (Lib)
messages: 413195
nosy: martin_kirch
priority: normal
severity: normal
status: open
title: Improve Telnetlib's throughput
type: resource usage
versions: Python 3.10
___
Python tracker
<https://bugs.python.org/issue46740>
___
___
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com