Microservices with Clojure
上QQ阅读APP看书,第一时间看更新

Application components

To address the user stories, there will be three main components and two helper components, as shown in the following diagram. The Registration Component will manage all the user accounts and related CRUD operations. The Service Component will handle all service-related operations such as create, update, and lookup. The Order Component will help place the orders, search for the historical order, and also rate the services. It will also help to maintain a status for the service order and generate relevant alerts in the form of SMS and email using an external service:

There will be two helper components—Geo Location and Alerting. These components will help connect the application to external services to get geolocation tags and send alerts in the form of SMS and email via provided APIs. Components, their responsibilities, and related databases are summarized in the following table:

Components such as authentication and users such as administrators and so on have been intentionally omitted from the explanation to focus only on the core components and features of the application.