Limit search to available items
Book Cover
E-book
Author Quevedo, Waldemar, author

Title Practical NATS : from beginner to pro / Waldemar Quevedo
Published [New York, NY?] : Apress, [2018]

Copies

Description 1 online resource
Contents Intro; Table of Contents; About the Author; About the Technical Reviewer; Acknowledgments; Foreword; Chapter 1: Introduction to NATS; Using NATS for Messaging; Messaging Over the REST; Do Not Assume the Audience; NATS As an Always Available Dial Tone; Delivery Guarantees; Is NATS a Message Broker or a Message Queue?; A Brief History of NATS; Roots in Ruby; I Wanna Go Fast!; Cloud-Native NATS; Summary; Chapter 2: The NATS Protocol; Overview of the Protocol; Why Not a Binary Protocol Instead?; Setting Up the Environment; Connecting to NATS; PING and PONG; Sending and Receiving Messages
Publishing Messages with PUBRegistering Interest in a Subject with SUB; Subject Names and Wildcards; Creating Queue Subscriptions for Load Balancing; Limiting Interest in a Subject with UNSUB; Publishing Requests; Lowest Latency Response; Summary; Chapter 3: The NATS Clients; Features of a NATS Client; Using Connect; Customizing a Connection; Authorization Credentials; Using Publish and Subscribe; Using Publish; Using Subscribe; Using QueueSubscribe; Removing a Subscription; Using Flush; Using Request; The Classic Request/Response; The New Style Request/Response; A Note on Asynchronous I/O
States of a NATS ConnectionClients Reconnection Logic; Event Callbacks; Using Close; Summary; Chapter 4: Setting Up NATS; Server Configuration; Exposed Ports; Server Logging; Logging Outputs; Configuring Authorization; Extending the Authorization Deadline; TLS Options; Tuning the Defaults; Increasing the Maximum Payload Size; Extending the Deadline for Slow Consumers Handling; Tuning the Keepalive Interval; Tuning the Maximum Number of Connections; Server Reloading; Reloading to Activate Tracing On-the-Fly; Reducing the Number of Live Connections; Running NATS in Docker; Summary
Chapter 5: High Availability with NATS ClusteringThe NATS Cluster Network Topology; Configuring a NATS Cluster from the CLI; Setting Up Clustering via the Configuration File; Explicitly Setting a Server Pool in the Client; Disabling Random Reconnection Ordering; Bootstrapping a Cluster Using Autodiscovery; Monitoring a NATS Cluster State; On Autodiscovery and Load Balancers; Setting Up a NATS Cluster Behind a Load Balancer; Summary; Chapter 6: Developing a Cloud-ƯNative NATS Application; The NATS Rider Application; Scaffolding the Application; Defining a Base Component
Customizing the Connection to NATSEnabling Components Discovery; The NATS Rider API; The Load Balanced Rider Manager; The Driver Agent; Summary; Chapter 7: Monitoring NATS; Server Instrumentation; The /varz Endpoint; The /connz Endpoint; Showing Client Subscriptions; Sorting and Limiting Query Results; About /routez; About /subsz; Using nats-top for Monitoring; Summary; Chapter 8: Securing NATS; Connecting Securely to NATS; Configuring TLS in the Server; Securing the Monitoring Endpoint; Tuning the Authorization Timeout; Setting a Certificate Authority
Summary Learn to use NATS and messaging as a solution for communication between services. The NATS project has been around since 2010, but it has become more popular in recent years due to how well it fits into the paradigm of cloud native applications and microservices architectures. It's fast becoming a very attractive option thanks to its great performance characteristics--a single server can push millions of messages per second--and overall simple design. First you will learn the fundamentals of NATS such as its design, protocol and the styles of communications it enables, internals of the NATS clients, and how to use the basic API provided by all the official clients. You will also understand how to setup and configure NATS servers using the configuration file. Next you'll work with real-world projects and see how to develop a production-ready cloud native application using NATS as the control plane over which clients communicate. Finally you'll learn advanced usage of the NATS clients, such as implementing heartbeats based failure detectors, tracing or collecting multiple responses from a single request. Perhaps you are familiar with REST-style APIs, and want to make the transition into a messaging-based approach instead. Practical NATS is the perfect place to start
Bibliography Includes bibliographical references and index
Notes Online resource; title from PDF title page (EBSCO, viewed June 14, 2018)
Subject Telecommunication -- Message processing.
Cloud computing.
Computer programming -- software development.
COMPUTERS -- Computer Literacy.
COMPUTERS -- Computer Science.
COMPUTERS -- Data Processing.
COMPUTERS -- Hardware -- General.
COMPUTERS -- Information Technology.
COMPUTERS -- Machine Theory.
COMPUTERS -- Reference.
Cloud computing
Telecommunication -- Message processing
Form Electronic book
ISBN 9781484235706
1484235703
148423569X
9781484235690