Skip to content

ipedrazas/memorylane

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Memory Lane Application

This is an application built using microservices and deployed in a kubernetes cluster. The objective is to create a functional application that can be used to learn about how to use Kubernetes.

The application is a memory management tool where we can add whatever we want to remember: from events to URLs or book. The application is created by composing different services written in different languages (python, go, clojure...). Using a poliglot solution is important to understand the boundaries and responsabilities of each part of the architecture.

Last, but not least, the project contains the artifacts that allow building and deploying the whole solution. In this project we will see how to build docker images, how to deploy them safely to a kubernetes cluster, and how to automate the process.

The goal is one command installation, which, in theory, can be achieved using Helm.

We will analyse the advantages and disadvatages of using different repos or having a monorepo. The old Monolith vs microservices discussion, but in the CI world, instead of the development side.

This project aims to provide enough information not only about how to construct the application, but how to operate and run it. Operability is a very important part of the overall solution.

Components

  • ✓ frontend - Javascript
  • ✓ Events microservice - Python - postgres
  • ✓ Tasks microservice - Go lang - postgres
  • Bookmarks microservice - Clojure
  • Quotes microservice - Rust
  • ✓ Postgres database
  • ✓ Migration job to create and populate the database