Book Image

Mastering Microservices with Java 9 - Second Edition

Book Image

Mastering Microservices with Java 9 - Second Edition

Overview of this book

Microservices are the next big thing in designing scalable, easy-to-maintain applications. They not only make app development easier, but also offer great flexibility to utilize various resources optimally. If you want to build an enterprise-ready implementation of the microservices architecture, then this is the book for you! Starting off by understanding the core concepts and framework, you will then focus on the high-level design of large software projects. You will gradually move on to setting up the development environment and configuring it before implementing continuous integration to deploy your microservice architecture. Using Spring security, you will secure microservices and test them effectively using REST Java clients and other tools like RxJava 2.0. We'll show you the best patterns, practices and common principles of microservice design and you'll learn to troubleshoot and debug the issues faced during development. We'll show you how to design and implement reactive microservices. Finally, we’ll show you how to migrate a monolithic application to microservices based application. By the end of the book, you will know how to build smaller, lighter, and faster services that can be implemented easily in a production environment.
Table of Contents (12 chapters)

Deployment and Testing

In this chapter, we'll continue from where we left off in Chapter 4, Implementing a Microservice. We'll add a few more services to groom our online table reservation system (OTRS) application that only depends on three functional services (Restaurant, User, and Booking services) and Eureka (service discovery and registration) to create a fully functional microservice stack. This stack will have gateway (Zuul), load balancing (Ribbon with Zuul and Eureka), and monitoring (Hystrix, Turbine, and the Hystrix dashboard). You want to have composite APIs and see how one microservice talks to others. This chapter will also explain how to containerize microservices using Docker and how to run multiple containers together using docker-compose. On top of this, we'll also add the integration tests.

In this chapter, we will cover the following topics:

...