# Microservices Example
This is an example project on how to build microservices with Oat++ Web Framework, and how to utilize the Monolithization feature.
# Note
For more information about this example, see the Monolithization article.
# Inside This Repository
|- user-service/ // User-Service source code
|- book-service/ // Book-Service source code
|- facade/ // Facade source code
|- monolith/all-services/ // Monolithic config to build all services as a Monolith
|- build_all.sh // Utility script. Build all services
|- run_all_microservices.sh // Utility script. Run all services as separate applications
# Build And Run
# Pre Requirements
- Install the oatpp
- Install the oatpp-swagger
# Build all
$ ./build_all.sh
# Run as microservices
$ ./run_all_microservices.sh
# Run as monolith
$ ./monolith/all-services/build/all-services-exe
# Overview
Facade takes book info from book-service, user info from user-service, merges data, and returns to the client.
# Service ports
- Facade - 8000
- User - 8001
- Book - 8002
# Example curl
$ curl http://localhost:8000/books/4
{"id": 4, "title": "1984", "author": {"id": 4, "name": "George Orwell"}}