كيفية حبس تطبيق الويب للصيانة دون فقدان العمل غير المحفوظ؟

StackOverflow https://stackoverflow.com/questions/19854630

سؤال

لديّ تطبيق ويب كبير في ASP .NET (ليس أن التكنولوجيا مهمة هنا) التي لا تملك حاليًا طريقة لإغلاقها للصيانة دون أن يفقد المستخدمون الحاليون عملهم. نظرًا لأنني لم أقم بتطبيق شيء من هذا القبيل من قبل ، أود أن أسمع عن بعض الاحتياطات القياسية والخطوات التي يتخذها المطورون لمثل هذه العملية.

فيما يلي بعض الأسئلة التي يمكنني التفكير فيها:

  • هل يجب إعادة توجيه كل صفحة إلى صفحة "الموقع لأسفل للصيانة" أم أن هناك طريقة أكثر مركزية لمنع التفاعل؟
  • كيفية تركيز صيانة مجدولة بحيث يتم إغلاق عمليات المستخدم قبل إغلاق الموقع. وبالتالي منع فقدان العمل غير المحفوظ.

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

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

المحلول

تتمثل إحدى طرق إنشاء صفحة الصيانة في استخدام ميزة app_offline.htm من IIS. باستخدام هذه الميزة ، ستتمكن من إظهار نفس صفحة HTML لجميع المستخدمين الذين يقومون بإخطارهم بالصيانة.

هناك منشور جميل هنا في Stackoverflow حول هذا الموضوع. ASP.NET 2.0 - كيفية استخدام app_offline.htm.

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

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

نصائح أخرى

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

النظر في مثال على Netflix: هل لديها نافذة صيانة مقفلة؟ لا أن عامة الناس يعرفون عنها. :-)

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