mirror of
https://github.com/taigrr/nats.docs
synced 2025-01-18 04:03:23 -08:00
53 lines
2.3 KiB
Markdown
53 lines
2.3 KiB
Markdown
|
|
<a href="https://nats.io"><img src="nats-horizontal-color.png" width="350" height="90" title="NATS Logo">
|
|
</a>
|
|
# The Importance of Messaging
|
|
|
|
Developing and deploying applications and services that communicate in distributed systems
|
|
can be complex and difficult. However there are two basic patterns, request/reply or RPC for services,
|
|
and event and data streams. A modern technology should provide
|
|
features to make this easier, scalable, secure, location independent and observable.
|
|
|
|
## Distributed Computing Needs of Today
|
|
|
|
A modern messaging system needs to support multiple communication patterns, be
|
|
secure by default, support multiple qualities of service, and provide secure
|
|
multi-tenancy for a truly shared infrastructure. A modern system needs to include:
|
|
|
|
* Secure by default communications for microservices, edge platforms and devices
|
|
* Secure multi-tenancy in a single distributed communication technology
|
|
* Transparent location addressing and discovery
|
|
* Resiliency with an emphasis on the overall health of the system
|
|
* Ease of use for agile development, CI/CD, and operations, at scale
|
|
* Highly scalable and performant with built-in load balancing and dynamic auto-scaling
|
|
* Consistent identity and security mechanisms from edge devices to backend services
|
|
|
|
## NATS
|
|
|
|
NATS was built to meet the distributed computing needs of today and tomorrow.
|
|
NATS is simple and secure messaging made for developers and operators who want
|
|
to spend more time developing modern applications and services than worrying
|
|
about a distributed communication system.
|
|
|
|
* Easy to use for developers and operators
|
|
* High-Performance
|
|
* Always on and available
|
|
* Extremely lightweight
|
|
* At Most Once and At Least Once Delivery
|
|
* Support for Observable and Scalable Services and Event/Data Streams
|
|
* Client support for over 30 different programming languages
|
|
* Cloud Native, a CNCF project with Kubernetes and Prometheus integrations
|
|
|
|
## Use Cases
|
|
|
|
NATS can run anywhere, from large servers and cloud instances, through edge
|
|
gateways and even IoT devices. Use cases for NATS include:
|
|
|
|
* Cloud Messaging
|
|
* Services (microservices, service mesh)
|
|
* Event/Data Streaming (observability, analytics, ML/AI)
|
|
* Command and Control
|
|
* IoT and Edge
|
|
* Telemetry / Sensor Data / Command and Control
|
|
* Augmenting or Replacing Legacy Messaging Systems
|