Code Monkey home page Code Monkey logo

foodie's Introduction

Getting started

Foodie is a simple food provider that allow user to perform online booking and track the progress of the order. The services consist of

  • Consumer Service
  • Restaurant Service
  • Order Service
  • Kitchen Service

Tech stack

Foodie consist of

  • SDK Java 11
  • Springboot as main bootstrap
  • Maven as building tools
  • Postgres and Kafka as persistance layer

Diagrams

Foo

Build instructions

make help
	tasks:
		help                           List available tasks on this project
		build.builder                  Create builder image with maven cache 
		build.consumer                 Compile and create consumer image  
		build.restaurant               Compile and create restaurant image  
		build.order                    Compile and create order image  
		build.kitchen                  Compile and create kitchen image  
		build.all                      Compile and create all images image  
		delete.builder                 Remove builder image
		delete.consumer                Delete consumer image  
		delete.restaurant              Delete restaurant image  
		delete.order                   Delete order image  
		delete.kitchen                 Delete kitchen image  
		delete.all                     Delete all images  
		compose.up                     Start microservices
		compose.down                   Stop microservices

Deployment

Foodie is running on docker and docker-compose and the food service provider wish to re-platform their application to a more scalable solutions such as kubernetes. Your task is to work on migration strategies and produce kubernetes object.

Scenario 1

Migrate the following

  • Database
  • Consumer Service
  • Restaurant Service

Scenario 2

Migrate the following

  • Kafka
  • Order Service
  • Kitchen Service

Scenario 3

Integrate with the following

  • Prometheus
  • logging with kibana

Bonus Points

Implementing the followings

  • Pod QOS
  • Disruption Budget
  • ConfigMap

Coming Soon

  • Service Mesh
  • Logging - WIP
  • Monitoring - WIP

foodie's People

Contributors

robinfoe avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.