سؤال

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

يعمل هذا بشكل جيد في بيئة خادم واحد لا تسمح بتجاوز الفشل، ولكننا نرغب في إيجاد نوع من الحلول لمشاركة الملفات بين الخوادم التي تدعم تجاوز الفشل.

هل واجه أحد هذا في الماضي؟وما نوع الحلول التي تمكنت من تطويرها؟من الواضح أن الاستمرار في قاعدة البيانات هو أحد الخيارات، ولكننا نفضل تجنب ذلك.

هل كانت مفيدة؟

المحلول

في وظيفة سابقة كان لدينا مجموعة من خوادم الويب مع موازن تحميل F5 أمامها.لقد واجهنا مشكلة مشابهة جدًا حيث أن تطبيقاتنا سمحت للمستخدمين بتحميل المحتوى الذي قد يتضمن صورًا وما شابه.كانت هذه تطبيقات قديمة ولم نرغب في تحريرها لاستخدام قاعدة بيانات وكان حل SAN مكلفًا للغاية بالنسبة لموقفنا.

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

اثنان من المنتجات التي قمنا بمراجعتها كانت والعكس صحيح و بيرسينك.أعتقد أننا انتهينا من استخدام PeerSync.


نصائح أخرى

في السيناريو الخاص بنا، لدينا خادم ملفات منفصل يكتب إليه كلا خادمي تطبيقات الواجهة الأمامية لدينا، وبهذه الطريقة يتمتع أي من الخادمين بإمكانية الوصول إلى نفس مجموعات الملفات.

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

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

تعد شبكة SAN المشتركة مع تجاوز الفشل حلاً رائعًا بتكلفة (عالية) كبيرة.هل هناك أي حلول مماثلة لتجاوز الفشل بتكلفة معقولة؟ربما شيء من هذا القبيل DRBD للنوافذ؟

المشكلة في نظام الملفات المشترك البسيط هي عدم وجود تكرار (ماذا لو تعطل خادم الملفات)؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top