Faster implementation with binary websocket
This commit is contained in:
@@ -10,6 +10,7 @@ const (
|
||||
silenceTimeout = 5 * time.Second
|
||||
reconnectDelay = 2 * time.Second
|
||||
readBufSize = 65536
|
||||
udpRcvBufSize = 8 * 1024 * 1024 // 8 MB OS receive buffer — absorbs bursts at high data rates
|
||||
)
|
||||
|
||||
// UDPClient manages the UDP connection to one MARTe2 streamer source.
|
||||
@@ -71,6 +72,11 @@ func (u *UDPClient) runSession() error {
|
||||
}
|
||||
defer conn.Close()
|
||||
|
||||
// Increase OS receive buffer to reduce kernel-level packet drops at high data rates.
|
||||
if err := conn.SetReadBuffer(udpRcvBufSize); err != nil {
|
||||
log.Printf("[%s] udp: SetReadBuffer: %v (proceeding with OS default)", u.sourceID, err)
|
||||
}
|
||||
|
||||
serverAddr, err := net.ResolveUDPAddr("udp4", u.serverAddr)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user