Web Your Vyavsay Logo

دراسة حالة · الترحيل

دراسة حالة: نقل متجر أغذية يبيع مباشرة للمستهلك من Firebase إلى بنية خاصة على Go وPostgreSQL

كانت علامة تجارية تبيع الفواكه والخضروات والمساحيق المجففة مباشرة للمستهلكين تدير متجرها الإلكتروني في البداية على React مع Firebase Authentication وCloud Firestore وFirebase Storage، مستضافاً على Vercel. أعدنا بناءه على بنية تتحكم فيها العلامة التجارية نفسها: واجهة برمجة بلغة Go على PostgreSQL، وتخزين صور متوافق مع S3 ومستضاف ذاتياً، وصفحات منتجات تُعرض من الخادم يستطيع زاحفو البحث وأدوات الذكاء الاصطناعي قراءتها، ومحوّل دفع عبر Razorpay، وكل ذلك يعمل في Docker على خادم افتراضي خاص.

بقلم Web Your Vyavsay team · نُشر في

كُتب بمساعدة الذكاء الاصطناعي. تُراجَع المعلومات مقابل المصادر المذكورة ويراجعها فريقنا. ترجمة للنسخة الإنجليزية بمساعدة الذكاء الاصطناعي. تُجرى المكالمات والمشاريع باللغة الإنجليزية.

قبل وبعد

المتجر قبل الترحيل وبعده
قبلبعد
الواجهة الأماميةReact وVite، تُعرض في المتصفحReact 19 وVite، مع عرض الصفحات العامة من الخادم
الخادم والبياناتFirebase Authentication وCloud Firestoreواجهة برمجة بلغة Go ببنية سداسية على PostgreSQL
تسجيل الدخولFirebase Authentication، بما في ذلك الدخول عبر Googleرموز JWT للوصول والتجديد، والتحقق من البريد، وإعادة تعيين كلمة المرور
الملفاتFirebase StorageMinIO، تخزين متوافق مع S3 تستضيفه العلامة بنفسها
الاستضافةVercelDocker Compose على خادم افتراضي خاص، خلف Nginx مع شهادات Let’s Encrypt

لماذا تُقدم الفرق على هذا النوع من الانتقال

هذه هي الأسباب الشائعة التي تدفع الشركات إلى ترك خدمات الخادم الجاهزة مثل Firebase، وهي تنطبق على مشاريع كثيرة لا على هذا المشروع وحده.

  • تتلاءم الطلبات والمخزون والتقارير بطبيعتها مع قاعدة بيانات علائقية يمكن الاستعلام منها وتصديرها بحرية.
  • امتلاك قاعدة البيانات والملفات يعني اختيار مكان البيانات ونقلها دون الاعتماد على أدوات التصدير لدى المزوّد.
  • تصبح التكاليف متوقعة عندما تكون فاتورة خادم بدلاً من تسعير لكل عملية.
  • تمنح الصفحات المعروضة من الخادم محركات البحث وأدوات الذكاء الاصطناعي المحتوى الكامل للمنتج، لا صفحة فارغة.

ما الذي أضافته إعادة البناء

  • سلة تسوق محفوظة على الخادم للعملاء المسجلين، مع إمكانية الشراء كزائر.
  • تقييمات المنتجات وقائمة الأمنيات.
  • مدفوعات عبر Razorpay، مع بوابة تجريبية للاختبار.
  • تصدير الطلبات والمستخدمين وطلبات الجملة بصيغة CSV من لوحة الإدارة.
  • عناوين وأوصاف SEO تُدار لكل صفحة من لوحة الإدارة.
  • إدارة طلبات الجملة لمشتري الكميات الكبيرة.

صفحات يستطيع الزاحفون والذكاء الاصطناعي قراءتها

تعرض خدمة Node صغيرة كل صفحة عامة بصيغة HTML قبل إرسالها، فيتلقى زاحف البحث أو معاينة الرابط أو قارئ الذكاء الاصطناعي تفاصيل المنتج بدلاً من حاوية فارغة. وإذا تعطلت تلك الخدمة، يعود Nginx إلى التطبيق الثابت، فلا يُمنع المتسوقون أبداً من الوصول.

دروس لعملية الترحيل الخاصة بك

  • حافظ على روابطك، أو أعد توجيه كل رابط قديم توجيهاً دائماً، ليبقى ترتيبك في نتائج البحث.
  • تحقق مما إذا كان مزوّد تسجيل الدخول الحالي يستطيع تصدير تجزئات كلمات المرور، وإن لم يستطع فجهّز مساراً لإعادة تعيينها للعملاء الحاليين.
  • انقل الصور والملفات مع سجلات قاعدة البيانات التي تشير إليها.
  • جرّب الترحيل على نسخة قبل تحويل المتجر العامل.

الأسئلة الشائعة

هل Firebase خيار سيئ للمتجر الإلكتروني؟

لا. إنه طريقة سريعة للإطلاق، وتعمل عليه متاجر كثيرة بشكل جيد. ويصبح الانتقال منه منطقياً عندما تحتاج إلى تقارير علائقية، أو تحكم أكبر في بياناتك وتكاليفك، أو صفحات تُعرض من الخادم.

متى يجب أن تنتقل الشركة من Firebase؟

عندما يصبح من الصعب إدارة التقارير أو تصدير البيانات أو التكاليف، أو عندما تحتاج إلى البيانات في موقع محدد، أو عندما يتأثر الظهور في البحث لأن الصفحات لا تُعرض إلا في المتصفح.

هل يمكن نقل المتجر من Firebase دون توقف؟

عادةً مع توقف قصير جداً. فبناء البنية الجديدة بالتوازي مع القديمة، وتجربة نقل البيانات، وتحويل DNS في وقت هادئ يُبقي الانقطاع قصيراً.

من يملك البيانات بعد الترحيل؟

الشركة نفسها. فقاعدة البيانات والملفات والخوادم موجودة في حسابات باسمها.

استشارة مجانية

أخبرنا بما يُبطئ أعمالك

سنوضح لك البرنامج الذي يمكن أن يحل المشكلة أولاً، وتكلفته التقريبية.

نرد خلال يوم عمل واحد.

تُجرى المكالمات والمشاريع باللغة الإنجليزية.

ما تحصل عليه مجاناً:

  • مكالمة لمدة 30 دقيقة مع مهندس
  • مراجعة مجانية لطريقة عملك أو لجدول البيانات الخاص بك
  • توصية مكتوبة: ما الذي يجب بناؤه أو أتمتته أولاً
  • تقدير تقريبي للتكلفة