-
Hi, I'm just started playing with Linkerd. From the Flamegraph I generated from perf, I can only see writev system call but no read/readv. How does Linkerd proxy read data from the socket? (A pointer to the source code will be will helpful!). Thanks in advance! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
For TCP forwarding, most of that will go through For HTTP proxying, most of that will be managed by |
Beta Was this translation helpful? Give feedback.
For TCP forwarding, most of that will go through
linkerd_duplex::HalfDuplex::poll_buffer
(which calls intotokio_util::io::poll_read_buf
, and so on).For HTTP proxying, most of that will be managed by
hyper
andh2
. I'd have to do a little digging to nail down the exact read calls there, but they'll boil down to aAsyncRead::poll_read
ontokio::net::TcpStream
.