تخطَّ إلى المحتوى

البيئات

توفر ميزة البيئات تفرعًا شبيهًا بـ Git لـ backend بالكامل. كل بيئة هي نسخة معزولة بالكامل من تطبيقك — بما في ذلك قاعدة البيانات الخاصة بها، و schema الـ API، والأدوار، وموفرو الملفات، ومسارات البوابة، وتكوين الأمان — مما يتيح لك التطوير والاختبار ومرحلة التغييرات دون التأثير على بيانات الإنتاج.

يبدأ كل مشروع ببيئة master واحدة. من هناك، يمكنك إنشاء فروع لبيئات جديدة ترث schema قاعدة البيانات (والبيانات اختياريًا) من أي بيئة موجودة. يعمل كل فرع بشكل مستقل: التغييرات التي تتم في بيئة واحدة لا تنتشر إلى أخرى حتى تقوم بدمجها صراحةً.


  • عزل البيئات: كل بيئة لها قاعدة بيانات PostgreSQL خاصة بها، مما يضمن الفصل الكامل للبيانات بين الفروع.
  • أوضاع الفرع: عند إنشاء بيئة جديدة، تختار بين استراتيجيات الاستنساخ Full (schema + بيانات) أو System (schema فقط).
  • نسخ التكوين: يمكن نسخ موفري تخزين الملفات ومسارات البوابة وإعدادات الأمان ومتغيرات البيئة اختياريًا من البيئة المصدر أثناء التفرع.
  • دورة حياة الحالة: تنتقل البيئات عبر حالات محددة — active وbranching وmerging وerror وarchived — لمنع العمليات المتضاربة.
  • علاقات الأب والابن: تحافظ البيئات على بنية شجرية تتتبع النسب لعمليات diff و merge.
  • Schema Diff: قارن schemas قواعد بيانات أي بيئتين باستخدام دلالات diff للأمام فقط. راجع Environment Diff.
  • Merge: طبّق تغييرات schema من بيئة إلى أخرى مع النسخ الاحتياطي التلقائي وتطبيق التغييرات الانتقائي (cherry-pick) و DDL المعاملاتي. راجع Environment Merge.
  • النسخ الاحتياطية: نسخ احتياطية تلقائية قبل merge ويدوية مخزنة في S3، مع القدرة على الاستعادة إلى أي بيئة مستهدفة — بما في ذلك البيئات المحذوفة. راجع Backups.
  • سجل الترحيل: مسار تدقيق كامل لجميع عمليات merge، بما في ذلك المستخدم الذي طبّق كل ترحيل، والطابع الزمني، والتغييرات المحددة المطبقة.

جميع موارد backend محددة بالبيئة المحددة حاليًا. عند تبديل البيئات باستخدام محدد البيئة في شريط التنقل العلوي، تعكس الموارد التالية حالة تلك البيئة:

الموردمحدود لكل بيئة
جداول وقاعدة بيانات schemaنعم
API Explorer (GraphQL)نعم
SQL Playgroundنعم
الوصول القائم على الأدوارنعم
موفرو تخزين الملفاتنعم
موفرو المصادقةنعم
API Keysنعم
مسارات API Gateway المخصصةنعم
تكوين الأمان (CORS، Rate Limits)نعم
متغيرات البيئةنعم
التكاملاتنعم

ملاحظة: يؤدي تبديل البيئات إلى إعادة تحميل كاملة للسياق. يتم نشر سياق environment عبر جميع خدمات backend للمنصة لضمان حل كل طلب مقابل قاعدة البيانات والتكوين الصحيحين.


تم تصميم نظام البيئات لتوفير عزل على مستوى المؤسسة بين مراحل التطوير:

  1. عزل التخزين: كل بيئة مدعومة بقاعدة بيانات مخصصة. يضمن هذا أن خطأ أو عملية بيانات في بيئة التطوير لا يمكن أن تؤثر أبدًا على بيانات الإنتاج.
  2. نطاق التكوين: تتم إدارة جميع الإعدادات — من API keys إلى سياسات الأمان — بشكل مستقل لكل بيئة. تغيير سياسة CORS في “Staging” لن يؤثر على “Production”.
  3. السياق على مستوى المنصة: يتم نشر البيئة الحالية تلقائيًا عبر المنصة بأكملها. سواء كنت تتصفح الملفات أو تشغل استعلامات SQL أو تقوم بمكالمات API، يضمن Archie Core أنك تتفاعل مع موارد البيئة الصحيحة.