Bu proje, modern Mikroservis Mimarisi prensiplerine uygun olarak geliştirilmiş, ölçeklenebilir ve dağıtık yapıda bir E-Ticaret backend uygulamasıdır.
Proje, büyük ölçekli sistemlerde olduğu gibi her işlevin (Sipariş, Stok, Ödeme vb.) kendi veritabanına ve bağımsız dağıtım (deployment) sürecine sahip olduğu modüler bir yapıyı benimser.
Uygulama aşağıdaki temel mikroservislerden ve altyapı bileşenlerinden oluşmaktadır:
- API Gateway: Tüm dış istekleri karşılayan ve ilgili servislere yönlendiren tek giriş noktası.
- Discovery Server (Eureka): Servislerin dinamik olarak birbirini bulmasını ve iletişim kurmasını sağlar.
- Auth Service (Keycloak/Identity): Kullanıcı kimlik doğrulama ve yetkilendirme (JWT) işlemleri.
- Product Service: Ürün kataloğu, kategori yönetimi ve ürün detaylarını sağlar.
- Order Service: Sipariş oluşturma, listeleme ve durum takibi işlemlerini yönetir.
- Inventory Service: Ürün stok durumunu kontrol eder ve sipariş anında stok düşümü yapar.
- Dil & Framework: Java 17, Spring Boot 3.x
- Veritabanı: PostgreSQL
- Message Broker: Apache Kafka
| Servis | Metot | Endpoint | Açıklama |
|---|---|---|---|
| Product | GET | /api/product |
Tüm ürünleri listeler |
| Product | POST | /api/product |
Yeni ürün ekler |
| Order | POST | /api/order |
Sipariş oluşturur |
| Inventory | GET | /api/inventory/{sku} |
Stok kontrolü yapar |
Geliştirici: Cihan Demir