Nats memory usage is high how to limit it?

846 Views Asked by At

We are fond of NATS JetStreaming the way it processes 100 - 1000 bytes messages compared to its competitors. Our target is to capitalize its potential for OLTP use case (as IPC) under financial transactions processing requirement. Likewise consider it too for enterprise logging architecture. The thing we have noticed during in-house benchmark activity using custom testing tools is, it translated high traffic work load to Network IO aggressively. Our tool pumped 1 million messages around in 59 seconds of 100 bytes each, over a Windows Server 2019 having configuration i.e. 6 virtual core and 16 GB of RAM, 7200 RPM SATA Disk. Hence the bandwidth of 10 Gbps Ethernet is consumed up to 7 Gbps of network IO by NATS JetStreaming. Our used NATS JetStream version is ?? We found the following two configuration options if wanted to curb/control NATS JetStreaming traffic on Ethernet: max_outstanding_catchup: This one is not working if we have correctly assumed it for our problem too (https://nats.io/blog/nats-server-29-release/).

GOMEMLIMIT: This variable is primarily used to curb memory in a containerized environment. Not sure if it will also limit network IO specially in our case that’s out of container (NATS Server on Windows OS).

Hi we have tried different inflight stream options to limit memory

0

There are 0 best solutions below