NATS provides a server that is written in the Go programming language. The executable name for the NATS server is
gnatsd, which stands for Go NATS Deamon. The NATS server is provided as open source software under the Apache-2.0 license. Synadia actively maintains and supports the NATS server.
NATS provides a server binary for Linux, Mac, and Windows. You can install the server from source on any platform you choose.
NATS provides a rich set of commands and parameters to configure all aspects of the server. You can run the server without any commands on the default port, or use the command line or a config file to configure the server.
One of the design goals of NATS is that it be always on and available like a dial tone. To implement this design goal, NATS provides mechanisms for clustering servers to achieve resiliency and high availability.
Monitoring and Troubleshooting
The NATS server exposes a monitoring port and several endpoints with JSON payloads that you can use to monitor the system and create custom monitoring applications.
The nats-top utility lets you monitor NATS server activity in real time and view subscription statistics.
Performance Benchmarking and Tuning
NATS provides a robust set of tooling for performance benchmarking and tuning the messaging system.