NATS Messaging

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
NATS
DeveloperCloud Native Computing Foundation
Initial release2011 [1]
Stable release
2.12.2 / November 13, 2025; 5 months ago (2025-11-13)
Repositorygithub.com/nats-io/nats-server
Written inGo
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemCross-platform
    TypeMessage broker, message-oriented middleware
    LicenseApache 2.0
    Websitewww.nats.io

    NATS ("Neural Autonomic Transport System"[2]) is an open-source messaging system developed under the stewardship of the Cloud Native Computing Foundation. 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.[3]

    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:

    The NATS server is often referred to as either 'Core NATS' or NATS with 'JetStream'. 'Core NATS' is the set of core NATS functionalities and qualities of service. 'JetStream' is the (optionally enabled) built-in persistence layer that adds streaming, queues, at-least-once and exactly-once delivery guarantees, historical data replay, decoupled flow-control and key/value store functionalities to Core NATS.[2] JetStream replaced the old STAN (NATS Streaming) approach.[4]

    Example

    [edit | edit source]

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

    Trying 107.170.221.32...
    Connected to demo.nats.io.
    Escape character is '^]'.
    INFO {"server_id":"NDRF5QLHFSLGQTXSAWZNVAMW3GWCJVBAORUPP2HTQHLI5WE5LFNYRKIO","server_name":"us-south-nats-demo","version":"2.12.0","proto":1,"git_commit":"fc6ec64","go":"go1.25.1","host":"0.0.0.0","port":4222,"headers":true,"tls_available":true,"max_payload":1048576,"jetstream":true,"client_id":3238,"client_ip":"2605:a601:a0ee:300:ed90:b74e:e247:4a06","nonce":"4SC3P0RhVN_M3Do","api_lvl":2,"xkey":"XA3TOTU4N62FAOTGIBMXJTQK3H3PJX4G5OI4G66XURCIG4UGL47SK7YS"}
    

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    Further reading

    [edit | edit source]
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).