برشاقة تطوير موقع على شبكة الإنترنت

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

  •  20-09-2019
  •  | 
  •  

سؤال

هل هناك طريقة مفضلة من برشاقة تطوير موقع على شبكة الإنترنت ؟ أنا جديد تماما رمز قاعدة على استعداد للذهاب في الموقع, ولكن تحديث سوف يستغرق عدة ساعات.أنا لا أريد الموقع إلى أسفل طوال الوقت مع "الترقية ، أن يعود قريبا!" الرسالة ولكن لا يمكن أن أترك الموقع الحالي بينما الجديد هو وضعها في المكان.

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

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

المحلول

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

ولقد قدمت بعض التفاصيل ويسألون سؤالا غامضا، ولكن المهم من الناس بشكل عشوائي على شبكة الانترنت. وهذا يقودني إلى الاعتقاد بأن "رفع برشاقة" كان آخر لحظة قلق (قبل مثل 23 دقيقة).

وسؤالك: "هل هناك طريقة مفضلة لرفع مستوى برشاقة موقع على شبكة الإنترنت؟" لا يمكن إلا أن تكون الإجابة كما، "نعم، ولكن أفعل ذلك بطريقة مختلفة مما تفعله."

نصائح أخرى

هناك عدد من الأساليب التي يمكن أن تستخدمها - اعتمادا على الوقت/الموارد كنت على استعداد لارتكاب إلى الترقية.

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

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

لقد حققت صفر إلى أسفل مرة الهجرات من قبل:

  1. إعداد new server(s) مع النسخة الجديدة من الموقع و قاعدة البيانات.
    • تغيير الحمل-موازن إلى تقسيم حركة المرور في اثنين من حمامات جديدة-التطبيق قديمة التطبيق.
    • تكوين موازنات التحميل يمكنك البدء في إرسال حركة المرور إلى الجديد-التطبيق server(s) ، ولكن يبقى الدورات القائمة على التطبيق server(s)
    • جلسات جديدة على التطبيق تحقق لمعرفة ما إذا كان العميل-البيانات التي تم ترحيلها ، وإذا لم يكن - بسرعة يفعل ذلك.
    • تدريجيا اغلاق "القديمة التطبيق" ملقمات تحميل يسقط ، ورفع مستوى جديد التطبيق و إضافة الجديد-التطبيق موازن التحميل بركة.
    • كما جلسات نهاية العميل يتم ترحيل بيانات إلى قاعدة البيانات الجديدة.
    • كما حمل تصاريح الهجرة غير نشط العملاء البيانات إلى قاعدة بيانات جديدة.

بالطبع هذا هو أكثر تعقيدا كما أننا بحاجة للحفاظ على الوصول إلى بيانات العملاء في اثنين من بيئات تدريجيا الهجرة.

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

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

إذا كنت غير قادرة على تشغيل التطبيق القديمة و الجديدة من التطبيق من نفس مخزن البيانات (الخلفية webservices, قاعدة بيانات, الخ) - ثم تطبيقات الخاصة بك سوف تحتاج إلى أن تكون على علم بأنهم سوف تحتاج إلى مزامنة البيانات بين القديم/الجديد - على سبيل المثال أثناء حفظ/تحديث العميل البيانات الكتابة تحتاج إلى أن تحدث في كلا الموقعين.

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

وفقط لا تنسى أن احتياطية!

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

الخام الإجراء سيكون:

  1. استئجار خادم جديد مع عنوان IP مختلف ، والتي سوف تكون حيث يمكنك نشر الموقع الجديد.أو إذا كان ذلك ممكنا ، إنشاء اختبار فرعي داخل موقع الويب الخاص بك التي يتم الوصول إليها الجمهور.
  2. نشر موقع الويب الخاص بك في الخادم الجديد/فرعي.أداء جميع الاختبارات اللازمة مع الموقع الجديد الخاص بك باستخدام IP أو فرعي الخاص بك أولا.
  3. عندما كنت على يقين من أن كل شيء على ما يرام ، العدد الموجهات الأولى إلى الخادم الجديد/فرعي.
  4. إعادة توجيه DNS إلى عنوان IP الجديد, أو إصلاح ذلك في مثل هذه الطريقة التي يمكن أن تجعل المجال الرئيسي الخاص بك الآن أشر إلى الموقع الأصلي من فرعي.

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

ويبدو وكأنه كنت تريد أن يكون كعكة الخاص بك وأكله.

إذا الترقية هي وظيفة اليدوية التي تستغرق عدة ساعات، لماذا لا يتم تسريعه عن طريق برمجة هذه المهمة.

وربما هذا هو شيء كنت في حاجة إلى سبق "مصممة" على الإصدار الحالي.

ويمكن أن تكون مقسمة بحيث بعض أجزاء (على سبيل المثال. كتالوج) متوفرة، ولكن البعض الآخر (على سبيل المثال. الشرائية) يتم ترقية؟

ويمكن إنشاء نسخة للقراءة فقط باستخدام ذاكرة التخزين المؤقت؟

وأو، بالتأكيد هناك أوقات من اليوم عندما انقطاع الخدمة هو مقبول؟ العمل مساء الأحد؟ حتى المواقع الرئيسية تماما لها بعض النوافذ صيانة خلالها قطعة من وظائف هي unavaiable.

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

ويمكنك أيضا استئجار الخادم رخيصة جدا مثل تلك التي في 20euro / شهر (kimsufi أو شيء) والقيام الترقية.

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