PRODمنصة BaaS الأوروبية السياديةافتح لوحة المعلومات →

الهندسة · 8 دقيقة للقراءة

الاستضافة الذاتية السيادية: Aurabase مقابل Rust BaaS

Affane Daylami · Fondateur · 16 يونيو 2026

العودة إلى بلوق

إذا كنت تبحث عن واجهة خلفية مكتوبة بلغة Rust يمكنك استضافتها بنفسك، فلم يعد الاختيار يقتصر على اسم واحد فقط. يقوم sh0.dev بتوزيع ملف ثنائي Rust بمساحة 25 ميجابايت تقريبًا. يجمع TrailBase بين نواة Rust وقاعدة SQLite المضمنة وواجهة إدارة SolidJS في نفس الحزمة. تظل Aurabase منصة كاملة، تتم استضافتها ذاتيًا أيضًا عبر Kubernetes (k3d محليًا) أو مخطط Helm: Postgres 16 مخصص لكل مشروع، والمصادقة، والوقت الفعلي، والتخزين، ووظائف الحافة، والذكاء الاصطناعي الأصلي. السؤال الحقيقي ليس "أيهما مكتوب في Rust"، ولكن ما هو النطاق الوظيفي الذي يتوافق مع مشروعك.

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

تركز هذه المقارنة على الواجهات الخلفية الأصلية ذاتية الاستضافة: sh0.dev وTrailBase وAurabase. للحصول على واجهة خلفية عامة ذاتية الاستضافة، غير مكتوبة بلغة Rust، مقارناتنا Aurabase vs PocketBase و Aurabase vs Appwrite استكشاف خيارات أخرى. للحصول على تحليل كامل لما تعنيه "سيادة الاتحاد الأوروبي" من الناحية القانونية، واستضافة الناشر وجنسيته، فإن مقالتنا الاستضافة الذاتية مقابل BaaS ذات سيادة الاتحاد الأوروبي تذهب أبعد من ذلك؛ يقتصر هذا المنشور على وضع Aurabase بين أقرانه في Rust.

الأساسيات

  • ثلاثة خيارات حقيقية اليوم لواجهة خلفية أصلية ذاتية الاستضافة: sh0.dev (ثنائي فردي، ~25 ميجابايت)، TrailBase (Rust + واجهة SQLite المضمنة + SolidJS)، Aurabase (منصة كاملة، Postgres 16 مخصصة).
  • تفترض Aurabase الحل الوسط المعاكس للثنائي الأحادي: العديد من الخدمات المنسقة (k3d محليًا أو Kubernetes/Helm في الإنتاج) في مقابل RLS متعدد المستأجرين، وCDC في الوقت الفعلي، والذكاء الاصطناعي الأصلي (NL2SQL، RAG).
  • الاستضافة الذاتية وسيادة الاتحاد الأوروبي هما محوران متميزان: استضافة نفسك لا تضمن أي شيء طالما أن الخادم الفعلي وشركة النشر ليسا في الاتحاد الأوروبي.
  • المعلومات حول sh0.dev وTrailBase مستندة على صفحاتهم العامة في وقت كتابة هذا التقرير، ولم يتم تدقيقها بشكل كامل: تحقق من وثائقهم المحدثة قبل اتخاذ أي قرارات.
#
لماذا الصدأ

لماذا يهم "الصدأ الأصلي" للاستضافة الذاتية

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

هذه ليست حجة أداء خالصة. إن الخدمة التي لا تحتوي على segfault ولا تحتوي على توقفات مؤقتة غير متوقعة لجمع الذاكرة من الأسهل مراقبتها لفريق بدون SRE مخصص. تم توثيق البنية الفعلية لمساحة عمل Cargo الأساسية المكونة من 18 صندوقًا في Aurabase بالتفصيل في ملف بنية Rust.

فارق بسيط في معرفة

"المصدر المفتوح" وحده لا يكفي لضمان قابلية النقل أو عدم القفل: فالبنية الفعلية، أو المستأجر الفردي أو المستأجر المتعدد، أو محرك التخزين الخاص أو القياسي، أكثر أهمية. يوفر كل من sh0.dev وTrailBase وAurabase إمكانية الوصول إلى التعليمات البرمجية المصدر، ولكن بنطاقات ونماذج بيانات مختلفة تمامًا.

#
الخيار 1

sh0.dev: ثنائي Rust فريد من نوعه، مصمم للتبسيط

يقدم sh0.dev نفسه، وفقًا لصفحاته العامة في وقت كتابة هذا التقرير، كواجهة خلفية موزعة على شكل ثنائي Rust ثنائي يبلغ حوالي 25 ميجابايت. الحجة المركزية هي بساطة النشر: ملف يمكن نسخه إلى الخادم، بدون تبعيات خارجية لتثبيته بشكل منفصل.

لم نقم بتدقيق النطاق الوظيفي الدقيق أو نموذج الترخيص لـ sh0.dev بالتفصيل في هذه المقالة: تظل المعلومات المتاحة للعامة حول هذا الموضوع محدودة، ويتطور مشروع من هذا النوع بسرعة. إذا كان لهذا المعيار أهمية في قرارك، فتحقق من الوثائق الرسمية المحدثة قبل اتخاذ القرار.

#
الخيار 2

TrailBase: Rust core، وSQLite المضمن، وواجهة SolidJS

يجمع TrailBase، وفقًا لصفحاته العامة، نواة خلفية مكتوبة بلغة Rust، وقاعدة بيانات SQLite مضمنة وواجهة إدارة مبنية مع SolidJS، وكلها يتم تقديمها كمشروع استضافة ذاتية. تذكرنا البنية بـ PocketBase (Go، SQLite، الواجهة المتكاملة)، مع وقت تشغيل مكتوب بلغة Rust بدلاً من Go.

كما هو الحال مع sh0.dev، لا تدعي هذه المقالة أنها قامت بفحص كود TrailBase أو خريطة الطريق بدقة. ما يمكننا قوله بثقة هو الموقع المعماري العام: ثنائي يتضمن محرك التخزين الخاص به بدلاً من الواجهة الخلفية المدعومة بـ Postgres خارجي.

#
الخيار 3

Aurabase: Postgres 16 مخصص، منصة كاملة، مستضافة ذاتيًا أيضًا

تفترض Aurabase مقايضة مختلفة عن الثنائية الأحادية. يوفر المستودع مجموعة Kubernetes محلية (k3d) تم إطلاقها في أمر واحد عبر ./start.sh، بالإضافة إلى مخطط Helm كامل (deploy/helm/aurabase/) مع ملفات تعريف قيمة منفصلة لـ Hetzner، ومنصة Kubernetes المحلية (k3d)، وScaleway. تم إصدار مساحة عمل Root Cargo بموجب ترخيص MIT.

يتضمن هذا الاختيار العديد من الخدمات التي سيتم تنسيقها، والبوابة، والمصادقة، وقاعدة البيانات، والوقت الحقيقي، والتخزين، والوظائف، والذكاء الاصطناعي، بدلاً من عملية واحدة. في المقابل، يتلقى كل مشروع PostgreSQL 16 مخصصًا (وليس ملف SQLite مشترك)، مع pgvector 0.8.6 وpg_graphql مضمنين في صورة المستأجر، وعزل أمان على مستوى الصف على مستوى المحرك بدلاً من مستوى التطبيق.

الفارق الدقيق الوحيد الملحوظ في قلب Rust: يعتمد الوضع الافتراضي لوظائف الحافة على خدمة TypeScript مخصصة (V8 Isolates)، وهو حل وسط هندسي موثق بالتفصيل في ملف البنية المذكور أعلاه، وليس إغفالًا نفضل الحفاظ عليه هادئًا.

#
نظرة عامة

ثلاثة أبنية، ملخصة جنبا إلى جنب

تعكس الأعمدة sh0.dev وTrailBase التي تحمل علامة "للفحص" بحثًا غير شامل من جانبنا في هاتين الأداتين، وليس غيابًا مؤكدًا للوظائف فيهما.

المعيارأوراباسيsh0.devتريلبيس
اللغة الرئيسيةالصدأ (مساحة عمل كاملة، 18 صندوقًا)الصدأ (ثنائي واحد)الصدأ (الأساسية) + SolidJS (الواجهة)
بصمة النشرk3d محليًا أو Helm/Kubernetes قيد الإنتاج، والعديد من الخدماتثنائي واحد، ~25 ميجابايتSQLite ثنائي واحد مضمن
قاعدة البياناتPostgreSQL 16 مخصص لكل مشروع + pgvector + pg_graphqlليتم التحقق منها (وثيقة رسمية)سكليتي المضمنة
واجهة الإدارةاستوديو Next.js منفصلللتحققواجهة SolidJS مدمجة في النظام الثنائي
الذكاء الاصطناعي الأصلي (NL2SQL / RAG)نعم، تم تسجيل الدخول بالرمز (aura-ai)للتحققللتحقق
الصوت الرسمي على هذه المقارنةهذه المقارنة نشرتها Aurabaseلا شيء، غير مرغوب فيهلا شيء، غير مرغوب فيه
#
السيادة

سيادة الاتحاد الأوروبي: والتي لا تعتمد على الاختيار الثنائي

إن الاستضافة الذاتية لواجهة خلفية مكتوبة بلغة Rust، مهما كانت، لا تضمن في حد ذاتها أي شيء فيما يتعلق بسيادة الاتحاد الأوروبي. يجب استيفاء شرطين متميزين: يجب أن يعمل الخادم الفعلي في الاتحاد الأوروبي، ويجب عليك الحفاظ على التحكم التشغيلي الفعلي فيه. لا يستطيع sh0.dev ولا TrailBase ولا Aurabase ضمان الشرط الثاني لك: تختار مكان نشر الثنائي أو الحاويات.

إن الاختصاص القضائي لناشر البرنامج مهم أيضًا، ولكن على محور مختلف: الإصدار الذي يديره المورد بدلاً من الاستضافة الذاتية الخاصة بك. هذه هي زاوية قانون CLOUD المفصلة في مقالتنا حول اختيار BaaS. بالنسبة للبنية التحتية التي تديرها Aurabase نفسها: فهي تعمل، ويتم التحقق منها في الإنتاج، في مراكز بيانات Hetzner في نورمبرغ وفالكنشتاين (ألمانيا) وكذلك في هلسنكي (فنلندا). هذه هي سيادة الاتحاد الأوروبي كما هي موجودة بالفعل اليوم، وهي تختلف عن المقر الرئيسي لشركة Aurabase SAS في باريس.

معلومات

تفاصيل معايير الامتثال التي يجب التحقق منها قبل اختيار الإقامة، سواء كانت سيادية أم لا: صفحتنا الامتثال.

#
في الممارسة العملية

متى تختار ماذا

إذا كانت بصمة النشر هي المعيار الأول، فإن الحد الأدنى من VPS، أو جهاز متطور، أو مشروع يتم فيه حساب كل ميجابايت، أو sh0.dev أو TrailBase يستحق المحاولة. هذه اختيارات يمكن الدفاع عنها لحالة الاستخدام المحددة هذه، حتى لو لم نختبر بأنفسنا سلوكها في الإنتاج.

إذا كان مشروعك يحتاج إلى إيجارات متعددة حقيقية مع أمان متقدم على مستوى الصف، أو Postgres كامل بدلاً من SQLite، أو الذكاء الاصطناعي الأصلي (NL2SQL، RAG) بدون تجميع من جهة خارجية، فإن Aurabase يغطي هذا الأساس. وهو أيضًا المسار الأكثر مباشرة إذا بدأت من مشروع Supabase موجود: يتم بعد ذلك وضع Aurabase كبديل لـ Supabase المكتوب بلغة Rust، مع سياسات SDK وRLS التي تهدف إلى التوافق المباشر تقريبًا، والموثقة في دليل الترحيل .

#
الأسئلة المتداولة

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

هل sh0.dev وTrailBase مفتوحان المصدر؟+
استنادًا إلى المعلومات العامة المتاحة في وقت كتابة هذا التقرير، يقدم كل من TrailBase وsh0.dev نفسيهما كمشروعي Rust مع كود مصدر يمكن الوصول إليه. لم تقم هذه المقالة بمراجعة مستودعها أو ترخيصها بالتفصيل: تحقق من حالة الترخيص والصيانة الدقيقة في المستودع الخاص بها قبل اتخاذ أي قرارات معمارية.
هل يمكننا ترحيل مشروع sh0.dev أو TrailBase إلى Aurabase؟+
لا تقوم Aurabase حاليًا بنشر دليل ترحيل مخصص لـ sh0.dev أو TrailBase. يقوم TrailBase بتخزين بياناته في SQLite المضمن، مثل PocketBase: يجب مراجعة كل جدول قبل الاستيراد إلى PostgreSQL، ولا يوجد نص تحويل تلقائي. بالنسبة لـ sh0.dev، يعتمد نموذج البيانات على المحرك الذي تعرضه الأداة، ليتم التحقق منه في وثائقه الحالية.
هل الاستضافة الذاتية وحدها تضمن سيادة الاتحاد الأوروبي؟+
لا. إن استضافة برنامج Rust الثنائي بنفسك لا يضمن سيادة الاتحاد الأوروبي إلا إذا كان الخادم الفعلي يعمل فعليًا في الاتحاد الأوروبي وتحتفظ بالتحكم التشغيلي فيه. تعد الولاية القضائية للشركة التي كتبت البرنامج محورًا منفصلاً عن موقع الخادم، وكلاهما يعتمد على التحليل الكامل للامتثال لقانون الناتج المحلي الإجمالي/قانون CLOUD.

هل أنت جاهز للنشر؟

الواجهة الخلفية الخاصة بك في خمس دقائق.

لا حاجة لبطاقة ائتمان · 500 ميجابايت مجانًا · 50000 MAU