Book Image

Hands-On Microservices with Kotlin

By : Juan Antonio Medina Iglesias
Book Image

Hands-On Microservices with Kotlin

By: Juan Antonio Medina Iglesias

Overview of this book

With Google's inclusion of first-class support for Kotlin in their Android ecosystem, Kotlin's future as a mainstream language is assured. Microservices help design scalable, easy-to-maintain web applications; Kotlin allows us to take advantage of modern idioms to simplify our development and create high-quality services. With 100% interoperability with the JVM, Kotlin makes working with existing Java code easier. Well-known Java systems such as Spring, Jackson, and Reactor have included Kotlin modules to exploit its language features. This book guides the reader in designing and implementing services, and producing production-ready, testable, lean code that's shorter and simpler than a traditional Java implementation. Reap the benefits of using the reactive paradigm and take advantage of non-blocking techniques to take your services to the next level in terms of industry standards. You will consume NoSQL databases reactively to allow you to create high-throughput microservices. Create cloud-native microservices that can run on a wide range of cloud providers, and monitor them. You will create Docker containers for your microservices and scale them. Finally, you will deploy your microservices in OpenShift Online.
Table of Contents (14 chapters)

Monitoring Microservices

When we move to production of our microservices, it does not matter how good our code was, how well we designed our architecture, or how many tests we have done, our microservices will fail. Since our microservices will eventually fail, we need to know when, and we need to provide the tools so that we can handle that situation.

In this chapter, we will discuss why monitoring is a critical part of any production-ready system, and how we can provide microservices that can be monitored and controlled. To experiment with this problem, we will create a microservice that can, and eventually will fail. Then, we will learn what SpringBoot Actuator can do, and how we can customize it for our needs. We will understand what microservices instrumentation is and how we can use it. We will create our own JMX Management Beans for providing tools to manage our production...