Practical NATS: From Beginner to Pro
- Length: 260 pages
- Edition: 1st ed.
- Language: English
- Publisher: Apress
- Publication Date: 2018-07-12
- ISBN-10: 148423569X
- ISBN-13: 9781484235690
- Sales Rank: #712189 (See Top 100 Books)
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.
What You’ll Learn
- Use NATS to build applications which use it as the control plane for communication among components
- Explore the fundamentals of NATS such as how the protocol works under the hood to more advanced communication styles which are possible with the basic building blocks provided by the client
- Setup, operate, and configure NATS servers, as well as how to troubleshoot common failure scenarios
Who This Book Is For
Anyone looking for a solution for some of the problems which come along with microservices and cloud native application development, such as service discovery, low latency requests, load balancing, tracing and monitoring for example. Also adopters of NATS who need further help getting started using it. Ideally you should have some familiarity with Go as that is the language of the code examples.
Table of Contents
Chapter 1: Introduction to NATS
Chapter 2: The NATS Protocol
Chapter 3: The NATS Clients
Chapter 4: Setting Up NATS
Chapter 5: High Availability with NATS Clustering
Chapter 6: Developing a Cloud-Native NATS Application
Chapter 7: Monitoring NATS
Chapter 8: Securing NATS
Chapter 9: Troubleshooting NATS
Chapter 10: Advanced NATS Techniques