Skip to content

A microservices-based e-commerce platform built with ASP.NET Core, focusing on scalable backend architecture and message-driven inter-service communication.

Notifications You must be signed in to change notification settings

doganenes/ECommerceMicroservice

Repository files navigation

🛍 ECommerceMicroservice

ECommerceMicroservice, .NET Core, RabbitMQ, Redis, Docker ve IdentityServer4 gibi modern teknolojilerle geliştirilen, konteyner tabanlı dağıtık bir e-ticaret uygulamasıdır. Gerçek dünya senaryolarına uygun, ölçeklenebilir ve modüler bir yapı sunar. Sorunların ayrıştırılması (separation of concerns) ve en iyi yazılım geliştirme pratikleri dikkate alınarak hazırlanmıştır.


📦 Mimari Genel Bakış

Architecture Overview


⚙ Kullanılan Teknolojiler

🧱 Backend & Mikroservisler

  • .NET 8.0 – Mikroservis geliştirme
  • ASP.NET Core MVC – Web UI (MultiShop.WebUI)
  • Entity Framework Core – ORM (ilişkisel veritabanı için)
  • Dapper – Hafif ve hızlı veri erişimi
  • AutoMapper – DTO ↔ Entity dönüşümleri
  • Ocelot – API Gateway (routing ve aggregation)

🔐 Kimlik Doğrulama & Yetkilendirme

  • IdentityServer4 – OAuth2 / OpenID Connect sağlayıcısı
  • JWT (JSON Web Token) – Token tabanlı kimlik doğrulama

🧵 İletişim & Gerçek Zamanlı Veri

  • RabbitMQ – Asenkron servisler arası mesajlaşma
  • SignalR – Gerçek zamanlı iletişim altyapısı

🧠 Önbellekleme & Performans

  • Redis – Dağıtık önbellekleme sistemi

🗄 Veritabanları

  • SQL Server – İlişkisel veritabanı
  • MongoDB – NoSQL (Catalog servisi için)
  • PostgreSQL – Message servisi için

☁ Dosya Depolama

  • Google Cloud Storage – Görsel/dosya yükleme servisi

🐳 Konteyner & DevOps

  • Docker & Docker Compose – Konteyner yönetimi
  • Portainer – Docker arayüz yönetim aracı

🧪 Geliştirme Araçları

  • Postman – API testleri için

🧩 Mikroservisler Özeti

Servis Teknoloji Veritabanı Açıklama
Catalog ASP.NET Core API MongoDB Ürün listeleme
Basket ASP.NET Core API Redis Alışveriş sepeti
Discount ASP.NET Core API SQL Server İndirim kodu yönetimi
Order ASP.NET Core API SQL Server Sipariş işleme
Cargo ASP.NET Core API SQL Server Kargo & takip
Message ASP.NET Core API PostgreSQL Mesajlaşma sistemi
Comment ASP.NET Core API SQL Server Ürün yorumları
Images ASP.NET Core API Google Cloud Storage Görsel/dosya yükleme servisi
Identity IdentityServer4 SQL Server Giriş, kayıt, rol yönetimi

🐳 Docker Compose ile Çalışan Servisler

Proje, aşağıdaki servisleri bir arada çalıştırmak için docker-compose.yml kullanır:

  • Tüm mikroservisler
  • IdentityServer4
  • API Gateway (Ocelot)
  • Redis
  • RabbitMQ (UI arayüzü dahil)
  • SQL Server
  • MongoDB
  • PostgreSQL
  • Portainer

Detaylı konfigürasyon için docker-compose.yml dosyasını inceleyin.


📸 Screenshots

Image1 Image Image Image Image Image Image


🚀 Başlarken

Gereksinimler

Sistemi Başlatmak için

git clone https://github.com/your-username/ECommerceMicroservice.git
cd ECommerceMicroservice

docker-compose up --build
---

About

A microservices-based e-commerce platform built with ASP.NET Core, focusing on scalable backend architecture and message-driven inter-service communication.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published