In this article, we will start constructing our reference implementation. We will implement our first service and set up the applications distributed logging and monitoring infrastructure. We begin by building the ConfigurationService, which externalizes and centralizes the application's configuration. While building the service, we introduce Spring Actuator, Micrometer, and Prometheus to capture and store the service's metrics and Grafana to render the application's metrics. Distributed logging is handled using a combination of Fluentd, Elasticsearch, and Kibana to capture, index, and query log data. Finally, we orchestrate our service and its supporting infrastructure with Docker-Compose.
Before we start building our first service, we will need to select a few more tools. This article will cover a selection of tools we will be using for our Spring reference implementation.
Containerized services simplify the deployment and management of individual services. However, how do you manage an application composed of hundreds of containerized microservices? In this article, we introduce Container Orchestration to simplify the process.
Managing an extensive collection of services directly in production can be difficult. In this article, we introduce service containerization to begin addressing this problem.