Jump to content

NATS Messaging

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Auric (talk | contribs) at 14:32, 7 July 2020 (→‎top). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

NATS
Developer(s)Synadia Communications, Inc.
Initial release2011 [1]
Stable release
2.1.7 / 14 May 2020; 4 years ago (2020-05-14)
Repositoryhttps://github.com/nats-io/nats-server.git
Written inGo
Operating systemCross-platform
TypeMessage broker, Open Source Messaging, message-oriented middleware
LicenseApache 2.0
Websitewww.nats.io
NATS Streaming Server
Developer(s)Synadia Communications, Inc.
Stable release
[1] / 11 February 2020; 4 years ago (2020-02-11)
Repositoryhttps://github.com/nats-io/nats-streaming-server.git
Written inGo
Operating systemCross-platform
TypeMessage broker, Open Source Messaging, message-oriented middleware
LicenseApache 2.0
Websitenats.io/download/nats-io/nats-streaming-server/

NATS is an open-source messaging system (sometimes called message-oriented middleware). The NATS server is written in the Go programming language. Client libraries to interface with the server are available for dozens of major programming languages. The core design principles of NATS are performance, scalability, and ease of use.[2]

Synadia develops and provides support for NATS. NATS was originally developed by Derek Collison as the messaging control plane for Cloud Foundry and was written in Ruby. NATS was later ported to Go.

The source code is released under the Apache 2.0 License. NATS consists of:

Microservices frameworks such as Micro, Mainflux, and Hemera rely on NATS as their messaging backbone.

Example

Below is a sample connection string from a telnet connection to the demo.nats.io site:[4]

telnet demo.nats.io 4222

Trying 107.170.221.32...
Connected to demo.nats.io.
Escape character is '^]'.
INFO {"server_id":"NDP7NP2P2KADDDUUBUDG6VSSWKCW4IC5BQHAYVMLVAJEGZITE5XP7O5J","version":"2.0.0","proto":1,"go":"go1.11.10","host":"0.0.0.0",
"port":4222,"max_payload":1048576,"client_id":13249}

References

  1. ^ https://github.com/nats-io/nats.rb/releases/tag/v0.3.12
  2. ^ "NATS Documentation".
  3. ^ "What's New in NATS 2.0".
  4. ^ "NATS Protocol". NATS Documentation. Retrieved 6 May 2016.

See also

Further reading