Vert.x Microservice Blueprint | Basic Design
Aug 1, 2016
The blueprint is an online shopping microservice application. You can treat it as a very simple C2C market like eBay.
Here is a diagram illustrating the microservice architecture:
Currently I designed these components:
account-microservice
: Component for user accountproduct-microservice
: Component for products we sell and buystore-microservice
: Component for individual stores in the marketcheckout-microservice
: Compoment for order checkoutpayment-microservice
: Compoment for payment transaction processingorder-microservice
: Compoment for order dispatching, processing, analyzing and storage- NOTE: this component should be divided into several sub-components
recommendation-microservice
: Compoment for simple recommendation for friends and favorite products with Neo4jcache-infrastructure
: Cache component for servicesapi-gateway
: API gateway (with load balance)shopping-ui
: A SPA front-end for the microservicemonitor-dashboard
: Dashboard for performance monitoring and backend metrics data demonstration
Here is the user workflow: User login and add products to chart -> Checkout -> Go to payment page and pay for the products -> Payment transaction success, order submitted -> (Wait for delivery...)
All events are sent on the event bus.