Book Image

Practical Microservices

By : Umesh Ram Sharma
Book Image

Practical Microservices

By: Umesh Ram Sharma

Overview of this book

<p>A microservice architecture helps you build your application as a suite of different services. This approach has been widely adopted as it helps to easily scale up your application with reduced dependencies. This way if a part of your application is corrupted, it can be fixed easily thereby eliminating the possibility of completely shutting down your software. This book will teach you how to leverage Java to build scalable microservices. You will learn the fundamentals of this architecture and how to efficiently implement it practically.</p> <p>We start off with a brief introduction to the microservice architecture and how it fares with the other architectures. The book dives deep into essential microservice components and how to set up seamless communication between two microservice end points. You will create an effective data model and learn different ways to test and deploy a microservices. You will also learn the best way to migrate your software from a monolith to a microservice architecture.</p> <p>Finishing off with monitoring, scaling and troubleshooting, this book will set a solid foundation for you to start implementing microservices.</p>
Table of Contents (17 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Logging helps in monitoring


Another challenge if you move from a monolithic application to microservices is the lack of stack traces through services. For one single request, one action is happening in service A, another action is happening in service B, and so on. The final result of that request is a failed response, but what happened inside, which service actually failed, and why are there questions to answer and lots of effort in debugging required? What happens if one of your microservices in your infrastructure starts throwing stack traces? One idea to trace any request is to bind every request with a unique global request ID, which will propagate to every service and log it.

It is good that we can bind different service actions taken for one request with one request ID, but still, the logs may be on different machines. It is still not easy for developers to track down the bug. For that, you might need a tool that will help in centralizing logging windows for developers. There are some...