Updated READMEs
This commit is contained in:
23
README.md
23
README.md
@@ -35,27 +35,16 @@ The following diagram shows the architecture:
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
There are the following logical services:
|
There are the following services:
|
||||||
|
|
||||||
* Customers (command-side) - REST API for creating customers
|
* Customers Service - REST API for creating customers
|
||||||
* Accounts (command-side) - REST API for creating accounts
|
* Accounts Service - REST API for creating accounts
|
||||||
* Money transfers (command-side) - REST API for transferring money
|
* Transactions Service - REST API for transferring money
|
||||||
* Customers (query-side) - subscribes to events and updates a MongoDB View, and provides an API for retrieving customers
|
* Customers View Service - subscribes to events and updates a MongoDB View, and provides an API for retrieving customers
|
||||||
* Accounts (query-side) - subscribes to events and updates a MongoDB View, and provides an API for retrieving accounts
|
* Accounts View Service - subscribes to events and updates a MongoDB View, and provides an API for retrieving accounts
|
||||||
|
|
||||||
There is also an [API gateway](http://microservices.io/patterns/apigateway.html) service that acts as a Facade in front of the services.
|
There is also an [API gateway](http://microservices.io/patterns/apigateway.html) service that acts as a Facade in front of the services.
|
||||||
|
|
||||||
One of the neat things about the modular architecture is that there are two ways to deploy these four services:
|
|
||||||
|
|
||||||
* monolithic-service - all services are packaged as a single Spring Boot executable JAR
|
|
||||||
* Microservices - three separate Spring Boot executable JARs
|
|
||||||
* customer-command-side-service - command-side customers
|
|
||||||
* accounts-command-side-service - command-side accounts
|
|
||||||
* transactions-command-side-service - command-side money transfers
|
|
||||||
* customers-query-side-service - query-side customers
|
|
||||||
* accounts-query-side-service - query-side accounts
|
|
||||||
* api-gateway-service - API gateway service
|
|
||||||
|
|
||||||
# About the examples
|
# About the examples
|
||||||
|
|
||||||
There are currently the following versions of the example application:
|
There are currently the following versions of the example application:
|
||||||
|
|||||||
@@ -2,34 +2,10 @@ This is the Java/Spring version of the Event Sourcing/CQRS money transfer exampl
|
|||||||
|
|
||||||
# About the application
|
# About the application
|
||||||
|
|
||||||
This application consists of three microservices:
|
This application consists of the following microservices:
|
||||||
|
|
||||||
* Account Service - the command side business logic for Accounts
|
* Account Service - the command side business logic for Accounts
|
||||||
* Money Transfer Service - the command side business logic for Money Transfers
|
* Account View Service - query side implementation of a MongoDB-based, denormalized view of Accounts
|
||||||
* Query service - query side implementation of a MongoDB-based, denormalized view of Accounts and MoneyTransfers
|
* Customer Service - the command side business logic for Customers
|
||||||
|
* Customer View Service - query side implementation of a MongoDB-based, denormalized view of Customers
|
||||||
The Account Service consists of the following modules:
|
* Transaction Service - the command side business logic for Money Transfers
|
||||||
|
|
||||||
* accounts-command-side-backend - the Account aggregate
|
|
||||||
* accounts-command-side-web - a REST API for creating and retrieving Accounts
|
|
||||||
* accounts-command-side-service - a standalone microservice
|
|
||||||
|
|
||||||
The Money Transfer Service consists of the following modules:
|
|
||||||
|
|
||||||
* transactions-command-side-backend - the MoneyTransfer aggregate
|
|
||||||
* transactions-command-side-web - a REST API for creating and retrieving Money Transfers
|
|
||||||
* transactions-command-side-service - a standalone microservice
|
|
||||||
|
|
||||||
The Query Service consists the following modules:
|
|
||||||
|
|
||||||
* accounts-query-side-backend - MongoDB-based, denormalized view of Accounts and MoneyTransfers
|
|
||||||
* accounts-query-side-web - a REST API for querying the denormalized view
|
|
||||||
* accounts-query-side-service - a standalone microservice
|
|
||||||
|
|
||||||
# Deploying the application
|
|
||||||
|
|
||||||
These services can be deployed either as either separate standalone services using the Event Store server, or they can be deployed as a monolithic application for simplified integration testing.
|
|
||||||
|
|
||||||
The three services can also be packaged as a single monolithic web application in order to be used with the embedded Event Store:
|
|
||||||
|
|
||||||
* monolithic-service - all-in-one, monolithic packaging of the application
|
|
||||||
|
|||||||
Reference in New Issue
Block a user