我正在对asyncio应用程序进行性能分析,发现以下堆栈最终消耗了令人惊讶的CPU时间(例如25%)
mycode.py:my_stream_writer.write(my_bytes)
asyncio/streams.py::self._transport.write(data)
asyncio/selector_events.py::self._sock.send(data)
鉴于这些是非阻塞套接字,我希望这不会占用太多时间。我该怎么办才能减少此处的开销?我已经将邮件批处理到几毫秒的垃圾箱中,并尝试了uvloop
。