Qaynaq STUDIO ’26 / BAKU
İşlər FW002

Hamısıburada.az · E-ticarət · Miqrasiya

10K+ məhsul, milyonlarla data sıra — OpenCart-dan Laravel-ə tam miqrasiya

Aktiv işləyən marketplace — köhnə OpenCart üzərində yavaş, mobilsiz, ölçülənmir. 10 minlərlə məhsul və milyonlarla data sırasını sıfır itki ilə yeni Laravel arxitekturuna köçürdük. Mobil tətbiqi paralel çatdırdıq.

Müddət
Çoxmərhələli (miqrasiya + mobil)
Komanda
Elvin Şərifov + backend/mobile kontraktorları
Xidmətlər
Mühəndislik · Məhsul dizaynı · Mobil tətbiq
Status
Canlı
10K+ Köçürülən məhsul
mln+ Data sıra
0% Data itkisi
iOS+Android Mobil tətbiq

Başlanğıc nöqtəsi

Hamısıburada.az aktiv işləyən marketplace idi — gündəlik trafik, real sifariş axını, mövcud SEO sıralamaları. Sistem köhnə OpenCart üzərində qurulmuşdu: özəlləşdirmələr həddən artıq, performans aşağı, yeni funksionallıq əlavə etmək tədricən mümkünsüzləşirdi. Mobil tətbiq isə yox idi.

Riski izah edək: 10 minlərlə məhsul, on-larla satıcı, kateqoriyalar, qiymət tarixçəsi, sifariş arxivi, SEO URL-ləri, müştəri profilləri. Hər birinin yeni sistemdə eyni şəkildə fəaliyyət göstərməsi lazım idi — sıfır data itkisi, sıfır SEO itkisi, canlı kəsilmə minimuma.

Qərarlar

  1. Laravel — yeni stack. Modern PHP, aktiv ekosistem, Eloquent, queue, Horizon, Telescope. OpenCart-ın bütün xüsusiyyətlərini Laravel-də modullaşdıraraq yenidən qurduq.
  2. Miqrasiya skriptləri idempotent — defalarla qaça bilirdi, dry-run modunda yoxlanılırdı. Hər mərhələdə count assertions ilə doğrulama.
  3. SEO URL-lərinin qorunması — köhnə URL-lər 301-redirect ilə yenilərə bağlandı. Sitemap və canonical-lar yenidən yazıldı.
  4. Mobil tətbiq paralel çatdırma — REST API mobil ilə eyni komandada yazıldı, beləliklə endpoint divergence olmadı.

İcra

Miqrasiya 3 fazada keçdi: schema mapping, batch import, canlı switch. Switch günü 4 saatlıq oxu-only window — yeni sifarişlər DB-də qeydiyyatdan keçmədi, qaytarıldı. Switch tamamlandıqdan sonra heç bir data itkisi olmadı.

“Miqrasiya işlərində ən qiymətli alət dry-run idi. Hər skript real DB-də qaçmadan əvvəl on-larla dəfə staging-də sınanmışdı.”

Mobil tətbiq native iOS və Android üçün ayrıca yazıldı, API isə Laravel resources istifadə edir. Push notification, in-app payment, kateqoriya filtri, favorit siyahısı — hamısı ilk versiyada.

Nəticə

  • Tam Laravel arxitekturasına keçid — yeni funksionallıq artıq həftələrlə yox, günlərlə əlavə olunur.
  • Sıfır data itkisi, sıfır SEO sıralama itkisi (köhnə URL-lər 301-redirect ilə qorundu).
  • iOS + Android tətbiqi launch oldu — mobil sifariş axını veb-paritetlə işləyir.
  • Komanda artıq özü release axınını idarə edir — biz handover sonrası danışman rolundayıq.

Buna oxşar bir iş üçün
danışaq.

Elvin Şərifova yaz