Skip to content

Uday-Polineni/Distributed_Ride_Matching_Platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distributed Ride Matching Platform
Real-time ride-matching service inspired by ride-sharing apps

Overview
This project is a distributed, real-time ride-matching platform designed to simulate the core functionality of popular ride-sharing applications.
It efficiently matches riders with nearby drivers using a microservices architecture, with a React.js frontend for an interactive user interface.

Key Features

  • Real-time rider and driver matching using geospatial data
  • Event-driven architecture with Kafka for handling rider and driver events
  • Redis for tracking driver locations and availability efficiently
  • Feedback storage for rides in a database
  • Scalable microservices architecture for easy extensibility
  • Interactive frontend built with React.js for riders and drivers

Architecture
image
The diagram above shows the microservices setup with Kafka for event streaming, Redis for location tracking, and the interaction between riders and drivers. The React.js frontend interacts with the backend services to send ride requests and display driver locations in real-time.

Tech Stack

  • React.js
  • Python / Flask
  • Kafka
  • Redis
  • PostgreSQL / MySQL
  • HTML / CSS

How It Works

  • Rider uses the React.js frontend to send a ride request with their location and destination.
  • Request is published to a Kafka topic, and driver services consume the event.
  • Redis stores current driver locations and availability to find the nearest match.
  • Matching driver is assigned to the rider, and both receive notifications via the frontend.
  • Ride feedback is collected and stored in the database for future analytics.

Future Enhancements

  • Integration with live maps for automatic location input on the React.js frontend.
  • Advanced ride-matching algorithms considering traffic and ETA.
  • Mobile app interface for riders and drivers.
  • Analytics dashboard for monitoring ride patterns and feedback.

About

A real-time ride-sharing service built with microservices. Key features include Kafka-based event streaming, Redis-powered geospatial tracking, an optimized rider-driver matching algorithm, and a scalable, fault-tolerant architecture designed for high performance and concurrency.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors