Zero-copy — подход, при котором данные не копируются между буферами при передаче. В классическом случае файл читается в userspace буфер, потом копируется в socket буфер — два копирования. С zero-copy ядро передаёт данные напрямую из файлового дескриптора в сокет через sendfile/splice. В Go чистый zero-copy сложен, потому что runtime управляет памятью и GC. Но можно приблизиться: io.Copy между net.TCPConn и os.File использует splice на Linux. Ещё есть mmap через syscall. На практике это нужно только при очень высоких нагрузках на I/O.
Что такое zero-copy в Go?
Senior
313 просмотровAFK Offer AI
Что такое golden file testing?