This article will finish construction of the OutboundEmailService by implementing the service's REST controller and MessageQueue listener. We will use Docker-Compose to deploy the service. Once the service starts, we exercise the REST endpoint using the service's Swagger user interface and send messages to the service's message queue via RabbitMQ's web interface. We complete the article by viewing the service's operational metrics using Grafana.
A common requirement for many applications is the ability to send email messages. In this first part of a two-article series, we build the OuboundEmailService. The service receives outbound email requests via REST endpoint and Message Queue listener and sends them to a configured email provider. This article will focus look at the service models, and the core logic for sending email messages. We will configure Swagger to allow us to exercise the service endpoint, and also discuss service Internationalization (I18N).
The requirements of modern applications force developers to make fundamental changes in how we construct applications. In this article, we will look at the Reactive Microservice approach. This approach focuses on four guiding attributes: Responsiveness, Resiliency, Elasticity, and Message-Driven.