Skip to content

stfnvar/FoodDeliveryApp

Repository files navigation

Food Delivery App

A microservices-based food delivery application built with Azure Service Fabric and .NET 8, featuring restaurant management, menu services, order processing, courier coordination using actors, and real-time notifications.

Architecture

This solution demonstrates a distributed system architecture with multiple stateful and stateless services communicating via Service Fabric Remoting, implementing patterns such as outbox pattern for reliable messaging, partitioning for scalability, and actor model for courier state management.

Services

  • GatewayAPI - ASP.NET Core Web API gateway for client requests
  • RestaurantService - Manages restaurant data and orders
  • MenuService - Handles menu categories and items
  • OrderService - Processes orders and manages shopping carts
  • CourierStorageService - Manages courier availability
  • CourrierActor - Actor-based courier state management
  • NotificationService - Sends order status notifications
  • Contracts - Shared models, DTOs, and service interfaces

Getting Started

  1. Ensure you have Azure Service Fabric SDK and .NET 8 installed
  2. Open the solution in Visual Studio 2022
  3. Set the Service Fabric application project as the startup project
  4. Press F5 to deploy to the local Service Fabric cluster

Testing

  • TestSimulationApp - Console application for end-to-end testing
  • ChaosTesting - Chaos engineering tests for resilience validation

Technologies

  • .NET 8
  • Azure Service Fabric
  • ASP.NET Core
  • Service Fabric Reliable Services
  • Service Fabric Actors
  • Service Fabric Reliable Collections

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors