Hands-On Microservices with Kotlin: Build reactive and cloud-native microservices with Kotlin using Spring 5 and Spring Boot 2.0

Juan Antonio Medina Iglesias


Build smart, efficient, and fast enterprise-grade web implementation of the microservices architecture that can be easily scaled.

Key Features

  • Write easy-to-maintain lean and clean code with Kotlin for developing better microservices
  • Scale your Microserivces in your own cloud with Docker and Docker Swarm
  • Explore Spring 5 functional reactive web programming with Spring WebFlux

Book Description

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.

What you will learn

  • Understand microservice architectures and principles
  • Build microservices in Kotlin using Spring Boot 2.0 and Spring Framework 5.0
  • Create reactive microservices that perform non-blocking operations with Spring WebFlux
  • Use Spring Data to get data reactively from MongoDB
  • Test effectively with JUnit and Kotlin
  • Create cloud-native microservices with Spring Cloud
  • Build and publish Docker images of your microservices
  • Scaling microservices with Docker Swarm
  • Monitor microservices with JMX
  • Deploy microservices in OpenShift Online

Who This Book Is For

If you are a Kotlin developer with a basic knowledge of microservice architectures and now want to effectively implement these services on enterprise-level web applications, then this book is for you

Table of Contents

  1. Understanding Microservices
  2. Getting Started with Spring Boot 2.0
  3. Creating RESTful services
  4. Creating Reactive Microservices
  5. Reactive Spring Data
  6. Creating Cloud Native Microservices
  7. Creating Dockers
  8. Scaling Microservices
  9. Testing Spring Microservices
  10. Monitoring Microservices
  11. Deploying Microservices
  12. Best Practices