Book Image

Building Microservices with Micronaut®

By : Nirmal Singh, Zack Dawood
Book Image

Building Microservices with Micronaut®

By: Nirmal Singh, Zack Dawood

Overview of this book

The open source Micronaut® framework is a JVM-based toolkit designed to create microservices quickly and easily. This book will help full-stack and Java developers build modular, high-performing, and reactive microservice-based apps using the Micronaut framework. You'll start by building microservices and learning about the core components, such as ahead-of-time compilation, reflection-less dependency injection, and reactive baked-in HTTP clients and servers. Next, you will work on a real-time microservice application and learn how to integrate Micronaut projects with different kinds of relational and non-relational databases. You'll also learn how to employ different security mechanisms to safeguard your microservices and integrate microservices using event-driven architecture in the Apache Kafka ecosystem. As you advance, you'll get to grips with automated testing and popular testing tools. The book will help you understand how you can easily handle microservice concerns in Micronaut projects, such as service discovery, API documentation, distributed configuration management, fallbacks, and circuit breakers. Finally, you'll explore the deployment and maintenance aspects of microservices and get up to speed with the Internet of Things (IoT) using the Framework. By the end of this book, you'll be able to build, test, deploy, and maintain your own microservice apps using the framework.
Table of Contents (20 chapters)
1
Section 1: Core Concepts and Basics
3
Section 2: Microservices Development
8
Section 3: Microservices Testing
10
Section 4: Microservices Deployment
13
Section 5: Microservices Maintenance
15
Section 6: IoT with Micronaut and Closure

Using DTOs for the endpoint payloads

The DTO pattern originates from the enterprise application architecture and fundamentally, data objects aggregate and encapsulate the data to transfer. Since in the microservices architecture an end client may need varied data from different persistence resources (such as invoice data along with user data), the DTO pattern is very effective in limiting calls to microservices for getting the desired projection of data. DTOs are also known as assembler objects since they assemble data from multiple entity classes.

In this section, we will explore how to implement and map (to an entity) DTOs. In the later sections, we will further dive into using DTOs as an effective mechanism to transfer data from and into a microservice. We will also look at how DTOs can help reduce the number of calls to microservices by assembling data.

Implementing DTOs

To implement a DTO, we will begin defining a DTO class for the pet owner.

Open the pet-owner microservice...