Giter VIP home page Giter VIP logo

onlinefooddelivery's Introduction

Online food Delivery System

Online food Delivery System have 4 major microservices that work and integrate together.

Order Service

process all customer orders such as customer order food by choosing a different menu, quantity; get valid payment information from payment Microservices and Send Email about order information to the customer

Member Management Service

register user, user information, user credit card information, user delivery address information

Restaurant Management Service

handle all the restaurant and menu information such as registering restaurant information, get all restaurant and food information find Restaurant by restaurant ID

Payment Management Service

using sample data, check if using credit card information is valid or not and send the result through the message queue

High level design

High level solution design

High level solution design

Order microservice to Restaurant microservice communication using AMQP and RabbitMQ

AMQP and RabbitMQ

AMQP and RabbitMQ


Technologies used

Use the technologies for restaurant Microservice

* Java Persistence Query Language (JPQL) * Used fetch type Lazy which lazy and fetching strategy subselect SUBSELECT (between restaurant entity, food menu entity ) * Aspect-oriented programming for each rest call (@before and @AfterReturning, * logging aspect on file, rest, service and Dao package ) * Messaging AMQP and Rabbitmq * Spring Rest Global exception handling (@ContollerAdvice) * Hibernate Validator * Jackson (data binding passed data that Rest Controller to Java POJO )

Use the technologies for Order Microservice

* Email * Java Persistence Query Language (JPQL) * Used fetch type Lazy which lazy and fetching strategy subselect SUBSELECT ( restaurant entity, food menu entity ) * Aspect-oriented programming for each rest call (@before and @AfterReturning, logging aspect on file, rest, service and Dao package ) * Messaging AMQP and Rabbitmq * Spring Rest Global exception handling (@ContollerAdvice) * Hibernate Validator * Jackson (data binding passed data that Rest Controller to Java POJO ) * Email

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.