This is the code repository for Designing Microservices Platforms with NATS, published by Packt.
A modern approach to designing and implementing scalable microservices platforms with NATS messaging
Building a scalable microservices platform that caters to business demands is critical to the success of that platform. In a microservices architecture, inter-service communication becomes a bottleneck when the platform scales. This book provides a reference architecture along with a practical example of how to implement it for building microservices-based platforms with NATS as the messaging backbone for inter-service communication.In Designing Microservices Platforms with NATS, you’ll learn how to build a scalable and manageable microservices platform with NATS. .
This book covers the following exciting features:
- Understand the concepts of microservices architecture
- Get to grips with NATS messaging technology
- Handle transactions and message delivery guarantees with microservices
- Implement a reference architecture for microservices using NATS
- Discover how to improve the platform’s security and observability
- Explore how a NATS microservices platform integrates with an enterprise ecosystem
If you feel this book is for you, get your copy today!
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
func main() {
// Initialize TracinginitTracing()
initTracing()
}
Following is what you need for this book: This book is for enterprise software architects and developers who want to gain hands-on microservices experience for designing, implementing, and managing complex distributed systems with microservices architecture concepts. Intermediate-level experience in any programming language and software architecture is required to make the most of this book.
With the following software and hardware list you can run all code files present in the book (Chapter 1-10).
Chapter | Software required | OS required |
---|---|---|
1 | NATS 2.2 | Windows, Mac OS X, and Linux (Any) |
1 | Go 1.16.5 | Windows, Mac OS X, and Linux (Any) |
4 | Prometheus 2.28 | Windows, Mac OS X, and Linux (Any) |
4 | Grafana 8.1.2 | Windows, Mac OS X, and Linux (Any) |
4 | Loki 2.3 | Windows, Mac OS X, and Linux (Any) |
8 | WSO2 API Manager 4.0 | Windows, Mac OS X, and Linux (Any) |
8 | WSO2 Micro Integrator 4.0 | Windows, Mac OS X, and Linux (Any) |
9 | Python 3.6 | Windows, Mac OS X, and Linux (Any) |
1 | Java Runtime Enviroment(JRE) | Windows, Mac OS X, and Linux (Any) |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Chanaka Fernando is a solution architect with 12+ years of experience in designing, implementing, and supporting enterprise-scale software solutions for customers across various industries including finance, education, healthcare, and telecommunications. He has contributed to the open source community with his work (design, implementation, and support) as the product lead of the WSO2 ESB, one of the founding members of the "Ballerina: cloud-native programming language" project, and his own work on GitHub. He has spoken at several WSO2 conferences and his articles are published on Medium, DZone, and InfoQ. Chanaka has a bachelor's degree in electronics and telecommunications engineering from the University of Moratuwa.