sidekick icon indicating copy to clipboard operation
sidekick copied to clipboard

Explore sendfile/splice support when proxying streams to avoid user-space buffer copy

Open harshavardhana opened this issue 1 year ago • 2 comments

Expected Behavior

Limited performance changes when using sidekick or without it

Current Behavior

sidekick loses performance for READ operations, without it we are able to saturate the network properly.

Possible Solution

It may be that buffer copy from userspace to kernel space incurs performance loss.

Steps to Reproduce (for bugs)

It would be best if you had a sizable setup, and this can't be easily reproduced in smaller environments.

Context

Performance

Regression

Not really

Your Environment

latest sidekick

harshavardhana avatar Feb 26 '24 21:02 harshavardhana

https://github.com/golang/go/issues/21814#issuecomment-416035580 - splice support was dropped because tcp conn is not available for src and dest while proxying

poornas avatar Feb 28 '24 20:02 poornas

I think what we can do for sidekick is to behave like a TCP proxy (LB)

harshavardhana avatar Mar 04 '24 01:03 harshavardhana

This is not possible for now.

harshavardhana avatar May 15 '24 18:05 harshavardhana