Skip to content

Study on the importance of the Principles and Patterns of Microservices Architectures Dissertation

License

NotificationsYou must be signed in to change notification settings

josepereira1/dissertation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

uminho

University of Minho - School of Engineering - Integrated Master's, Software Engineering

Dissertation: Study on the importance of the Principles and Patterns of Microservices Architectures

Notice: You can view the dissertation document here.

Links:

Index:

Microservice List:

#IDName
sagaSaga
cpCommand Product
qpQuery Product
ccCommand Category
qcvpQuery Category Visible Products
qcapQuery Category All Products
qctQuery Category Tree
coOrder
inventoryInventory
scShopping Cart
consumerConsumer
managerManager

How to deploy the case study:

Requirements:

  • Docker and Docker compose;
  • Makefile;
  • 16+ GB of RAM;
  • the repository folders (src/deployment);

Deployment process (Unix):

  • Download the repository:
git clone https://.com/josepereira1/dissertation.git
  • Set the docker volumes dir or leave the default (/tmp/dissertation/docker-volumes)

    • open .env (src/deployment/.env) and set the DOCKER_VOLUMES_DIR var with docker volumes directory.
    • open makefile (src/deployment/makefile) and set the DOCKER_VOLUMES_DIR var with same docker volumes directory defined above.
  • Execute deployment:

cd src/deployment
make deployment
  • Wait some time (3 minutes, or check the cpu usage, when it decrease significantly, probably the deployment ended).

  • Setup base data and configurations:

make setup
  • Populate data (products, categories and associate them):
make populate

The create product functionality is asynchronous process, than when populate process ends, it will take some time until all products are created and associated with categories.

After first deployment:

After first deployment, to stop or start the application just need to run make up or make down and reuse data saved in volumes. There is one more command, make upf, it is similar to make up, but forces the docker images update.

Use case study application (after deployment)

After deploy application, access via web browser to http://localhost:8080 and use the application. Check the default users section.

Default users:

  • Consumer:

    • username: bob
    • password: password
  • Manager:

    • username: alice
    • password: password

Access monitoring services:

Consult logs:

Can consult logs per service to see command and reply messages used in microservices patterns, using the next command:

make <<service_name>>

Examples:

make cp

Releases

No releases published

Packages

No packages published

Languages