Microservices - PrintPress POC
PrintPress is a proof-of-concept created for a client. It’s main goal was to implement a concept backend for printed material ordering process where:
- new product support should be fairly easy to add
- product price calculation can become fairly complex and there should be relatively simple way to support it
- different front-end design concepts should be supported by the backend:
- one page order,
- single page wizard,
- multiple page wizard,
- shopping basket support,
- quick quote
- solution should scale easily with number of visitors
- it should be possible to host different lines of printing business on one server and then split them on different servers in the future if needed with minimum work
PrintPress POC application was implemented in less than a month with extensive inputs from client and constant communication throughout stages.
The POC implements:
- microservices architecture for scalability and easier line of business isolation
- product search and display of all attributes
- support for different pricing models by implementing:
- a number of fixed pricing attributes
- final price calculation using Apache BeanShell embedded scripting with scripts stored in DB
- quick quote system
- order submission, email notification and order status tracking page
- loading/dumping all or selected subset of DB data to JSON files
POC is designed to be modular (division of responsibilities) and with as clear as possible vertical flow of responsibilities (minimal or no horizontal communication between services and/or modules).
For more details, checkout source code of all the microservices in PrintPress POC Git repo.