Skip to main content

استراتيجية إصدار جافا


إستراتيجية إصدارات جافا
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
استراتيجية جيدة لتنفيذ نظام إصدار.
لقد كنت تكافح مع إصدار البرامج لفترة من الوقت الآن. أنا لا أتحدث عن اصطلاح تسمية، أنا أتحدث عن كيفية تطبيق نسخة في الواقع في نظام بناء على طول الطريق حتى إلى إصدار.
أنا عموما استخدام main. minor. maintenance - [نوع الإصدار] أي 1.0.2-rc1.
المشكلة هي إدارة رقم الإصدار. لقد حاولت العديد من الطرق (التمسك بها في ملف بناء، ملف خصائص، قاعدة بيانات، الخ، الخ) ولكن لم أجد أي شيء يعمل حقا بشكل جيد.
أنا أتساءل عما إذا كان أي شخص لديه أي أفكار جيدة حول هذا الموضوع. أيضا، يتساءل كيف يتعامل الناس الإفراج عن نسخة. أي إذا كنت الافراج عن / نشر الإصدار 1.0.0-rc1 القيام البق وجدت في هذا الإصدار ثم الحصول على تسجيل الدخول إلى 1.0.0 (المقبل / الافراج عن الإنتاج).
تستخدم ميكروسوفت & لوت؛ ماجور & غ؛. & لوت؛ مينور & غ؛. & لوت؛ باتش & غ؛ - & لوت؛ بيلد نومبر & غ؛ (أو الاختلاف).
أحب استخدام & لوت؛ ماجور & غ؛. & لوت؛ مينور & غ؛. & لوت؛ بيلدنومبر & غ؛
حيث أعمل نحن نستخدم نظام مافين: قطعة أثرية [-major-مينور-ريفيسيون] [- سنافشوت] التي تسمح لنا لتطوير "قيد التقدم" الإصدارات التي تتغير في إشعار لحظات (سنافشوت) وتلك التي تم إصدارها رسميا . وفيما يلي بعض الأمثلة:
-services-1.0.0-SNAPSHOT. jar - web-2.3.11.war كرم-2.5.0.ear.
إذا كان لديها سنافشوت فيه فإنه لم يمر مجموعة كاملة من الاختبارات أو مجرد تجربة المطور. إذا لم يكن لديك سنافشوت ثم هو مرشح الإصدار. نحافظ على مستودع للمرشحين الإفراج وآخر يتم إرسالها لنشر مرة واحدة واختبار سعيدة معها.
كل هذا يمكن أن تدار مع بضع إدخالات بسيطة في ملف بناء تحت مافين. انظر Maven2 البرنامج التعليمي.
وربما يكون هذا هو وظيفة ميتة الآن، ولكن أنا إضافة بلدي سنتين على أي حال. أنا من رأي أن بناء الأرقام ينبغي أن يعني شيئا لكل من يرى ذلك. لذلك أنا شخصيا أعتقد أن هذا هو وسيلة جيدة لتسمية الإصدارات:
main. minor. patch. revision - e. g. 1.1.4.2342.
الرئيسية / الأرقام البسيطة هي واضحة جدا. ولكن من وجهة نظر العدد 3، فإنه لا يزال يحتاج إلى يعني شيئا للعميل. لقد أصدرت هذا الإصدار الجديد لك، السيد العملاء، لكنه لم يكن يستحق عدد طفيفة جديدة منذ نحن فقط إصلاح بعض الخلل. لذلك قمنا بزيادة رقم التصحيح.
الرقم الرابع عادة ما يعني لا شيء على الاطلاق للعميل، لذلك قد تجعل كذلك من المفيد لك ولأي شخص آخر في الشركة التي ترى ذلك. لذا بالنسبة لنا، هذا الرقم هو رقم مراجعة سفن. وهو يخبرنا بالضبط أي مراجعة كانت مسؤولة عن هذا الإصدار حتى نتمكن من سحب بها في أي وقت لإعادة إنشائه. رمز المتفرعة من الواضح يحقق هذا أيضا، ولكن ليس إلى اليقين 100٪.
أيضا، ميزة أخرى مع عدد رقمي العدد هو أنه يتكامل بسهولة إلى ما يقرب من كل نظام البناء المستمر.
على أي حال، هذا هو بلدي سنتان.
+1 على حل جيرا / بامبو. المعلومات الإضافية الوحيدة حول بناء وأود أن تشمل (لأغراضي) هو الإصدار التخريب، على الرغم من أن عملية وضع العلامات هو 80٪ من ما أريد.
الحفاظ يدويا على معلومات الإصدار / الإصدار هو الألم الملكي. السماح ل جيرا بالسيارة هو فكرة عظيمة.
على السؤال الأخير، حول حيث البق / العيوب الحصول على تسجيل والإفراج عن نسخة:
يتم تسجيل عيب / قضية ضد الإصدار حيث يظهر. عيب في 1.0.0-rc1 يحصل على تسجيل ضد 1.0.0-rc1 جيرا قد (أو ربما أضفنا) حقل "فيكس فور" التي من شأنها أن يكون الإفراج المخطط لها، في هذه الحالة 1.0.0 إذا كان العيب / القضية هو شديدة بما فيه الكفاية، قد يكون من الضروري إضافة آخر "أرسي" الإفراج. يتم اإلفراج عندما ال تكون هناك أية عيوب / مشاكل حرجة، ويوافق العميل) أو اإلدارة (على إمكانية تأجيل أي قضايا متبقية.
جمال إدارة هذا من خلال جيرا هو أن إضافة الإصدارات، وتوليد سجلات التغيير، وما إلى ذلك الآلي بشكل جيد إلى حد ما.
كما نستخدم & لوت؛ ماجور & غ؛. & لوت؛ مينور & غ؛. & لوت؛ بيلدنومبر & غ؛ ونحن ندير هذا مع كروزيكونترول / () على خادم بناء لدينا. واستخدام ويكس و كرويسيكونترول تكوين لإدارة الأرقام الرئيسية الرئيسية - لا تزال زيادة تلك باليد - ولكن عدد بناء يحدث تلقائيا عندما على خادم البناء. هل يمكن إنشاء قاعدة زيادة الرئيسية / ثانوية تلقائيا أيضا أعتقد - لدينا فقط ترغب في القيام بذلك يدويا بحيث يأخذ التفكير الكنسي من قبل ديف عندما حان الوقت لتسمية مستوى إطلاق معين.
يتم تعيين الكبرى و الصغرى من قبلنا، يدويا زيادة لهم كما نراه مناسبا.
بيلداتينومبر هو عدد الأشهر منذ بدء تشغيل المشروع مضروبا في 100، بالإضافة إلى عدد أيام الشهر الحالي.
يتم زيادة دايليبيلدنومبر لكل بناء بعد منتصف الليل كل يوم، بدءا من الصفر.
مثلا بناء الإصدار الرابع 5.2 في 10 يوليو، حيث بدأ المشروع 1 يناير من ذلك العام، سيكون لها رقم الإصدار.
يتم حساب كل هذا بالنسبة لنا من قبل مهمة الإصدار في نانت.
وهذا يحافظ على أرقام الإصدار فريدة من نوعها، ويسمح لنا أيضا لحساب بسرعة عند بناء التثبيت.

كايل ليبر.
بعض الأشياء شعرت الكتابة عن.
مافين فيرسيونينغ ستراتيغي.
لقد أجري الكثير من المناقشات مع المحللين في مؤسستي حول كيفية إصدار البرامج باستخدام مافين و I & [رسقوو]؛ م العثور على هناك سوء فهم مشترك حول ما يعني سنافشوت في الواقع. لقد كنت تبحث عن بلوق جيدة لإرسالها التي تساعد على شرح الإصدار في مافين ولكن للأسف كل شيء أنا & [رسقوو]؛ وجدت فقط يناقش إصدارات الإصدارات وليس كيفية استخدامها كما كنت إعادة تطوير التطبيق. لذلك، قررت أنني سوف تأخذ طعنة في ذلك. أرحب بأي تعليقات ونقد بناء سيساعدني على تحسين هذه الوثيقة، لذا يرجى عدم التردد.
أولا، سنافوت ليست نفس الشيء مثل إصدار ألفا / بيتا / الخ. إنها كلمة رئيسية خاصة تعني أنها أحدث إصدار من شفرتك. وهذا يعني أنه يتغير. إذا كنت سحبت سوماب-1.0-سنافشوت أمس ثم حاولت سحب عليه اليوم فإنه من المرجح أن لا تكون هي نفسها. وهذا يعني أيضا إذا كان لديك مشروع يعتمد على إصدار سنافشوت، سوف تحتاج إلى مافين للتحقق من مستودع بعيد عن التغييرات في كل مرة تقوم بتشغيل بناء.
الشيء التالي لفهم هو ما هو الافراج عنه في مافين. الإفراج لا يعني أن الإصدار جاهز للإنتاج. وهذا يعني أن المطور قد قرر أنه في مرحلة في تطوره أنه يريد أن يكون رمز مغلق حتى لا تضيع. وقد يرغب أيضا في توزيع هذه الشفرة على شخص ما، ربما مكتبة لديه مطور على فريق آخر يحتاج إلى البدء في تطوير التطبيقات الخاصة بهم أو ربما هو التطبيق الذي سيتم تثبيته على بيئة اختبار للاختبار. لذلك هذا يعني أن الافراج عن المافين يمكن أن يكون ألفا، بيتا، وإطلاق سراح المرشح، والتصحيح، والإنتاج، أو أي شيء آخر تريد تصنيفه كما.
منطقي؟ حسنا، ربما المشي من خلال سيناريو لكيفية التعامل مع هذا من شأنه أن يساعدك. أولا يتيح نظرة على استراتيجية الإصدار التي استخدمها:
استراتيجية الإصدار.
بناء الجملة لهذه الاستراتيجية يستند إلى تنسيق في مافين: المرجع الكامل. الاختلافات هي I & [رسقوو]؛ م إعادة تسمية & لدكو؛ نسخة تزايدي & رديقو؛ إلى & لدكو؛ التصحيح & رديقو؛ وكسر المؤهل الاختياري & لدكو؛ & رديقو؛ إن & لدكو؛ تايب & رديقو؛ و & لدكو؛ محاولة & رديقو؛ لمجرد الوضوح.
العلامة & lt؛ & GT الكبرى. - هذا هو رقم يشير إلى تغيير كبير في التطبيق. قد تكون النسخة الرئيسية إعادة كتابة كاملة من النسخة الرئيسية السابقة و / أو كسر التوافق الوراء مع الإصدارات القديمة. العلامة & lt؛ قاصر & GT. - هذا رقم يشير إلى مجموعة صغيرة من التغييرات من الإصدار الثانوي السابق. وعادة ما تتكون النسخة الثانوية من مجموعة من إصلاحات الأخطاء والميزات الجديدة، ويجب أن تكون دائما متوافقة مع الوراء. العلامة & lt؛ التصحيح وGT. - هذا هو الرقم الذي يشير إلى أن بعض الأخطاء الثابتة التي لا يمكن الانتظار حتى الإصدار الطفيفة المقبل. يجب أن يتضمن إصدار التصحيح إصلاحات الأخطاء فقط وعدم تضمين ميزات جديدة مطلقا. وينبغي أيضا أن تكون دائما متوافقة مع الوراء. إصلاحات الأمان هي مثال على التصحيح نموذجي. [& لوت؛ تايب & غ؛ - & لوت؛ تريبوت & غ؛] - هذا الجزء الأخير اختياري ويستخدم فقط لتحديد أن هذا الإصدار ليس بالضرورة مستقرا. النوع هو كلمة رئيسية ويمكن أن يكون أي شيء ولكن أنا عادة التمسك ألفا، بيتا، و أرسي. المحاولة مجرد رقم للإشارة إلى أي محاولة من هذا النوع هي. على سبيل المثال، بيتا-01، أرسي-02، أرسي-05، إلخ. للحصول على نسخة مستقرة، أترك هذا الجزء، ومع ذلك، لقد رأيت المشاريع الأخرى التي ترغب في استخدام الكلمة من ريليس للإشارة إلى نسخة مستقرة (يمكنك ترك محاولة لأن ذلك لن يكون منطقيا، واستخدام أرسي (الافراج عن مرشح) لذلك).
مثال سيناريو.
حتى الآن للسيناريو. اسمحوا لي أن أقول أنا & [رسقوو]؛ م العمل على تطبيق فوبار. مؤسستي تتوقع مني تقديم فوبار الإصدار 1.0 في نهاية الربع. (لاحظ أقول 1.0 وهو ما يعني أنا & [رسقوو]؛ م فقط باستخدام أول رقمين للإشارة إلى الإصدار، وذلك لأن النسخة الرئيسية والثانوية هي حقا الإصدارات الوحيدة أي شخص يهتمون بخلاف فريق التطوير الخاص بك. أيضا، هناك & نبسب؛ الطريق بالنسبة لي أن أعرف ما سيكون الإصدار النهائي ولكن أنا لا أعرف الرئيسية والثانوية سوف تبقى على حالها.) أنا & [رسقوو]؛ م العمل على فريق رشيقة لذلك أنا ذاهب لنشر ما فعلته في نهاية كل سباق إلى بيئة الاختبار بلدي حتى اختبار بلدي يمكن التحقق من صحة كل شيء. لذلك، هنا ما يمكنني القيام به:
وسوف تبدأ مع الإصدار 1.0.0-سنافشوت في بلدي pom. xml في بداية سبرينت # 1. في نهاية سبرينت # 1، وسوف تستخدم مافين-ريليس-بلوجين لإنشاء فوبار-1.0.0-أرسي-01 الافراج عن تطبيق فوبار. سوف البرنامج المساعد تغيير الإصدار من 1.0.0-سنافشوت إلى 1.0.0-أرسي-01، علامة رمز في سم مع فوبار-1.0.0-أرسي-01، ومن ثم بناء أخيرا أن الإفراج عنهم. ثم البرنامج المساعد ثم قم بتحديث الجذع ليكون الإصدار القادم من التطبيق الذي سنترك في 1.0.0-سنافشوت. ثم سوف نشر فوبار-1.0.0-أرسي-01 إلى بيئة الاختبار. وسوف تستمر هذه العملية لسباق السرعة المقبلين حتى نصل إلى مرحلة حيث نحن إلى نقطة حيث نعتقد أننا كاملة.
لذلك دعنا نقول إننا الآن في سبرينت # 5. لقد أصدرنا أربعة إصدارات مرشحة الإصدار من التطبيق، وتحديد الخلل وإضافة ميزات على طول الطريق. الآن نحن نشعر فوبار-1.0.0-أرسي-04 جاهز للاستخدام الإنتاج. الآن أنا تشغيل المافين الافراج عن البرنامج المساعد مرة أخرى لإنشاء فوبار-1.0.0 نسخة من طلبي. مرة أخرى، فإن البرنامج المساعد وضع علامة على الإصدار الحالي من التعليمات البرمجية في سم مع فوبار 1.0.0 ومن ثم بناء هذا الإصدار. فإن البرنامج المساعد ثم تحديث الجذع ليكون الإصدار القادم من التطبيق الذي هذه المرة اخترت أن تكون 1.1.0-سنافشوت.
لاحظ، أنا زيادة النسخة الثانوية وليس النسخة التصحيح. في عالم مثالي، وأود أن يتم ذلك مع الإصدار 1.0 ولكن بالطبع هذا هو العالم المثالي، وعلى الأرجح أنا و [رسقوو]؛ ليرة لبنانية لديك التصحيح بلدي الإصدار 1.0.0 في مرحلة ما. منذ أنا لا أعرف متى سيكون أنا & [رسقوو]؛ م الذهاب إلى مجرد التحرك مع الحياة والبدء في العمل على الإصدار التالي من التطبيق، 1.1.
بعد بضعة أسابيع لي فريق كا بلدي يبلغني أنه تم العثور على علة في اختبار الافراج التي تحتاج إلى أن تكون ثابتة. ماذا سأفعل الآن؟ لقد انتقلت ولديها 1.1 رمز جديد في الجذع الذي يمكن أن تذهب إلى الإصدار 1.0. لا تقلق، أتذكر أن البرنامج المساعد الافراج عن العلامات كل من بلدي النشرات بالنسبة لي. لذلك، أنا إنشاء فرع من علامة فوبار-1.0.0 وندعوها فوبار-1.0.X. ثم أنا الخروج من هذا الفرع الجديد وزيادة إصدار التصحيح إلى 1.0.1-سنافشوت. هذا الفرع الجديد هو الآن بلدي الترقيع فرع. وسوف إصلاح علة ذكرت لي من قبل فريق كا واستخدام البرنامج المساعد الافراج لإنتاج نسخة التصحيح فوبار-1.0.1. ثم مباشرة بعد إنتاج فوبار-1.0.1 وسوف دمج 1.0.1 التغييرات في الجذع بحيث الإصلاح موجود في الإصدار 1.1 (الذي لم يتم الافراج عنه).
ثم أخذ نفسا عميقا والعودة إلى العمل على 1.1. إذا علة أخرى يأتي، ربما حتى بعد أن نخرج إلى الإنتاج، وسوف تستمر للتو العودة إلى بلدي فوبار-1.0.X الترقيع فرع لجعل الإصلاح ودمج التغييرات مرة أخرى في الجذع.
استراتيجية مبسطة.
أنا لا تستخدم دائما الاستراتيجية المذكورة أعلاه. في الواقع، الكثير من الوقت يمكنني استخدام ما أود أن نسمي نسخة مبسطة من هذه الاستراتيجية. في الأساس، هو الشيء نفسه باستثناء إزالة العنصر & لوت؛ تايب & غ؛ - & لوت؛ تريبوت & غ؛ تماما وبدلا من & لوت؛ باتش & غ؛ ، لدي أكثر عام & لوت؛ إنكرمنتالفرزيون & غ؛ (تماما كما هو الحال في كتاب المافين). لذلك يبدو هذا:
لنرجع إلى السيناريو المثال أعلاه ومقارنة الاستراتيجية الكاملة مع هذه الإستراتيجية المبسطة:
كما ترون استراتيجية مبسطة يفقد بعض من شجاعة الاستراتيجية الكاملة التي يمكن أن تكون شيئا جيدا وسيئا. لن يكون واضحا ما إذا كان الإصدار جاهزا للإنتاج أم مجرد مرشح الإصدار. ومع ذلك، فهذا يعني أنه لا يتعين عليك اختبار المرشح الذي تم قبوله مرتين. إذا لاحظت إصدار تسليمها بواسطة سبرينت # 4 هو أيضا إصدار الإنتاج. هناك حاجة إلى إعادة بنائه فقط لإزالة - RC-04.
لفريق أصغر أو فريق لا يفعل حقا القطع الأثرية التي يستهلكها العديد من المجالات الأخرى هذا قد يكون حلا أفضل لأن هناك الكثير أقل الإصدار لإدارة. تحتاج فقط للتأكد من أنك التواصل بوضوح مع فريقك حتى يعرف الجميع ما يجري.
المشاركات الاخيرة.
جيثوب ريبوس.
تحديث الحالة. كليبر على جيثب.
كوبيرايت & كوبي؛ 2016 كايل ليبر - ترخيص - بدعم من هوغو و هوغو-أوكتوبريس موضوع.

إستراتيجية إصدارات جافا
الحصول على فيا أب ستور قراءة هذه المشاركة في التطبيق لدينا!
استراتيجية مناسبة لقاعدة بيانات الإصدار التحكم.
أنا أقرأ هذا بلوق ولدي سؤال حول 5 المشاركات المكتوبة. من ما أفهم قمت بإنشائه على نص أساسي كبير يتضمن كافة التعدادات سكل دل. بعد القيام بذلك يمكنك تتبع كل تغيير في البرامج النصية منفصلة.
ومع ذلك أنا لا أفهم كيف يمكن أن يكون اسم ملف البرنامج النصي ذات صلة إلى بناء معين من التطبيق الخاص بك؟ ويقول أنه إذا كان المستخدم تقارير علة في 3.1.5.6723 يمكنك إعادة تشغيل البرامج النصية إلى هذا الإصدار. وهل تتبع التغييرات على جدول وما إلى ذلك في ملف خاص أو لديك كافة التغييرات دل في نفس ملف البرنامج النصي ثم يكون وجهات النظر وغيرها في الملفات الخاصة كما يقول؟
أولا وقبل كل شيء، ترقيات دب هي الشر، ولكن تلك المدونة يصف كابوس الكلي.
يمكن للمرء إنشاء مصفوفة الكفاءة مبرمج بناء على نهج الترقية:
المستوى 0: لا ترقيات على الإطلاق. العملاء بالرعب ونقل البيانات يدويا باستخدام أي واجهة المستخدم المقدمة من قبل تطبيق أو حلول إدارة دب دب طرف ثالث (صدقوني، فمن الممكن حقا). المستوى 1: يوجد نص برمجي لترقية تفريغ دب. العملاء يشعرون بالأمان، ولكن سوف إصلاح القضايا الصغيرة ومزعجة جدا لمدة 1-2 سنوات القادمة. يعمل النظام، ولكن لا يسمح بأي تغييرات. المستوى 2: تغيير الجدول. تعطل وحشية، وخاصة في حالة وجود مشكلة أثناء الترقية. مشاكل ضخمة وتكاد لا توجد ضمانات للحصول على نتيجة آمنة 100٪. تتم إدارة تحويل البيانات بواسطة برنامج نصي للعربات التي تجرها الدواب. الزبائن ليسوا سعداء. المستوى 3: مخطط أقل تصميم: ساعة واحدة التوقف عن العمل للسماح البرامج النصية عربات التي تجرها الدواب لترجمة التكوين في دب (هذه الخطوة قد تلف دب في كثير من الحالات). دعم الرجال لديهم كل احتياطيات القهوة استنفدت تماما. المستوى 4: ترقيات شفافة كسول: صفر التوقف، ولكن لا يزال بعض القضايا ممكنة. الزبائن سعداء تقريبا، ولكن لا تزال تذكر الخبرة السابقة. المستوى 5: بنية مثالية، لا حاجة إلى ترقية صريحة. مجموع السعادة. الزبائن لا يعرفون ما هو ترقية الإجراء. المطورين إنتاجية وهادئة.
وسوف أصف جميع المسائل التقنية، ولكن قبل أن اسمحوا لي أن أذكر ما يلي (يرجى أن يغفر لي إجابة طويلة جدا):
في الوقت الحاضر دورات التنمية مضغوط جدا و دبس كبيرة تقريبا أي ميزة قد إدخال تغييرات النظام وكسر التوافق حتى إما لدينا إجراء ترقية بسيطة ومستقرة أو أننا قد تأجيل ميزة قد يتم تحديد القضايا من قبل العملاء، لذلك هناك فرصة أن يكون بناء عاجل الساخنة الإصلاح مع بعض الخطوات الترقية اللازمة عموما، فمن الأفضل بكثير لتجنب أي حواجز بينك وبين العملاء.
المستوى 0 والمستوى 1 كلتا الحالتين واضحة وغبية. يجب على أي شخص تجنب ذلك.
المستوى 2 تغيير ليس ذلك سيئا لجداول صغيرة، ولكن يمكن أن يكون مشكلة واحدة كبيرة. على جداول كبيرة حقا (> 1Gb) فإنه ربما يستغرق عدة ساعات أو حتى أيام ل ألتر تابل لإكمال. وعلاوة على ذلك، فإنه لا يحل سوى مسألة ترقية المخطط، ولكن ماذا عن البيانات المخزنة؟ وأقترح أيضا أن نفكر في تخطيط البيانات المادية لفهم العوائق الفعلية وراء هذا النهج. الإجراء كله يمكن أن تكون غير آمنة، لذلك تأكد من وجود النسخ الاحتياطية.
المستوى 3 يتم حل المشكلة مع ترقية المخطط عن طريق نقل المخطط إلى الطبقة العليا. الحل أقل من المخطط هو محدود إلى حد ما، وذلك أساسا لأنه يعطل السلطة بأكملها وراء نموذج العلائقية. ويمكن اقتراح نهج هجين على حد سواء ترقيات سريعة والقدرة على استخدام الجبر العلائقية. هناك بعض المقالات المثيرة للاهتمام:
يرجى ملاحظة، تعقيد إجراءات الترقية لا يزال هناك، انتقلت فقط إلى مستوى التطبيق. هناك العديد من السيناريوهات ذات الصلة، ولكن أنا ذاهب لوصف نظام هجين واحد كنت أعمل مع لعدة سنوات. يمكنني وصف نموذج البيانات بأنه "الكيانات مع العلاقات". وكانت العلاقات بين الكيانات ممثلة على مستوى قاعدة البيانات، وتم تخزين الكيانات نفسها كنقاط شمل.
كان هذا النظام ناضجا وكان لديه ما يكفي من العملاء. كانت هناك الكثير من طلبات الميزات، لذلك كانت فرق البحث والتطوير وفريق ضمان الجودة مشددة قليلا. تم تنفيذ إجراء الترقية في البداية كجافا مستقل التطبيق قراءة النقط شمل من دب، ورفع مستواه باستخدام أبي دوم وكتابته مرة أخرى إلى دب. يبدو النهج الفعلي واضحا جدا، ولكن هناك العديد من القضايا الخفية وراء:
يمكن أن يكون منطق الترقية عربات التي تجرها الدواب إلى حد ما، لذلك هناك فرصة لكتابة بيانات شمل خطأ زيادة كبيرة وقت التوقف عن العملاء يمكن أن يستغرق بعض الوقت لقراءة تحويل-الكتابة 1-2GBs من شمل جميع الخطوات إجراء الترقية ينبغي أن تكون مغطاة الاختبارات التلقائية (أود أن أقول سي هو مست) يمكن العثور على مواطن الخلل الخفية في يوم أو يومين، لذلك النسخ الاحتياطية ليست مفيدة أي أكثر من ذلك، بسبب إدخال البيانات الجديدة رمز الترقية يمكن أن تصبح فوضوي قليلا خاصة إذا كنت تريد / تحتاج أن يكون ترقيات بين يبني (الشرط العادي لأي فريق رشيقة)
لقد حاولت التخفيف من جميع المخاطر المحتملة عن طريق استخدام تعريف إجراءات الترقية أكثر صرامة، وقواعد التحقق من الصحة والاختبارات واسعة النطاق التي يؤديها نظام سي ضد البيانات واقع الحياة (التي تم جمعها عبر جميع العملاء). فوجئت لرؤية بعض الخطوات فشل بسبب القضايا القديمة يدخل منذ وقت طويل من قبل البرامج النصية الترقية القديمة. وقد وضعت خطوات ترقية منفصلة من أجل إصلاح تلك القضايا المخفية. تم إجراء بعض التحسين أيضا لتقليل وقت الترقية إلى 20-30 دقيقة معقولة. تنفيذ شريط التقدم القائم على وحدة التحكم فعل بقية.
ملاحظة سريعة: أي مستخدم النهائي حريصة على رؤية التقدم لأي عملية طويلة (> 2 دقيقة). من فضلك لا ننسى لتنفيذ مثل "متعة".
تم تخزين نسخة دب مبدئيا في الجدول المنفصل. يرجى عدم استخدام هذا النهج، لأنه من الأفضل بكثير أن يكون الكيانات إصدارها بشكل منفصل وتجنب كامل دب قفل أثناء الترقية.
سيتم عرض إجراء ترقية واحد كمثال (جميع خطوات التحقق والتحقق مخفية خلف & لوت؛ بيلد / & غ؛ و لوت؛ فيرسيون / & غ؛ منطق المعالجة). '-' يعني أقل، '*' - أي بناء.
كل برنامج نصي هو جافا صغير أو تنفيذ رائع (تم استخدام زسلت أيضا). في وقت لاحق تم وضع إجراءات خفض أيضا، ولكن هذا هو قصة مختلفة تماما.
المستوى 4 مخطط البيانات على طبقة التطبيق يسمح للقيام بالكثير من الاشياء المثيرة للاهتمام. على سبيل المثال، من الممكن استبدال شمل مع بروتوبوف. كالمعتاد هناك عدة أسباب للقيام بذلك (هو أبسط وأسرع، الخ). إذا كنت لا تحب بناة مفهوم يمكنك استخدام الادخار بدلا من ذلك.
على أي حال، بروتوبوف يسمح لإنشاء نظام متوافق مع الخلف (من حيث البيانات المخزنة) تقريبا دون صداع. ميزة جيدة، بالمناسبة. وجود نظام متوافق مع الوراء يمكنك بسهولة تنفيذ ترقية كسول وشفافة تماما. يمكن أن يكون عملية خلفية أو الترقية بناء على طلب، الخ الخبر السار هو صفر التوقف، المستخدمين سعداء والقدرة على القيام ترقيات أكثر في كثير من الأحيان. مما يعني أنك يمكن أن تتطور بسرعة، والاستجابة فورا على طلبات العملاء، تكون أكثر نجاحا في كلمات أخرى.
المستوى 5 عذرا، ليس لهذا الوقت. يرجى توخي الحذر مع استراتيجيات الترقية. فمن كوتي سهلة لبيع نظام مع بعض مخطط تعريف وقفل نفسك بها. لا ميزات جديدة - لا الزبائن.
قائمة مرجعية بسيطة ولكنها مفيدة للغاية:
سوف تكون قادرة على حل على الفور مشكلة القادمة من جانب العملاء؟ وسوف يكون من الآمن للعميل لرفع مستوى النظام (ماذا لو كان على الأقل مهمة حرجة)؟ كم من الوقت سيكون مطلوبا لتحديد المشكلة؟ هل هناك أي عملية تحقق تلقائية؟
شكرا لقرائتك.
لن يتم الاحتفاظ بالتغييرات على الجداول والآراء في ملفها الخاص. سيتم إنشاء نص برمجي جديد للتغيير لكل تغيير تجريه. حتى إذا قمت بتغيير الجدول 'X' 5 مرات، سيكون لديك 5 مخطوطات تغيير مختلفة لكل من هذه التغييرات.
عندما تريد إنشاء المخطط كما في إصدار إصدار معين، سوف تحصل على شفرة المصدر المسمى لهذا الإصدار. إنشاء قاعدة بيانات من خط الأساس. ثم قم بتشغيل البرامج النصية التغيير في هذا الإصدار من التعليمات البرمجية، في الترتيب الزمني. مثلا
الآن يتيح القول أنك تريد إعادة إنشاء قاعدة البيانات اعتبارا من الإصدار 1.2:
يمكنك مزامنة التعليمات البرمجية لتسمية version_1.2 تشغيل البرامج النصية في ترتيب baseeline. sql، add_publisher. sql، add_publish_date. sql.
بدلا من ليكيباس، هل يمكن استخدام فلايواي (flywaydb. org/) الذي يسمح لك لكتابة الخاصة بك ترقية / خفض البرامج النصية سكل. وهذا يوفر المزيد من المرونة ويعمل أيضا على وجهات النظر والإجراءات المخزنة.
ليكيباس يتطلب منك إجراء تغييرات المخطط باستخدام لغة شمل الخاصة بها، والتي قد تكون محدودة إلى حد ما.
حفظ رقم الإصدار في قاعدة البيانات، وتطبيق البرامج النصية التحديث عند بدء التشغيل، هو جزء مهم من هذه الاستراتيجية.
وإليك كيفية بدء التشغيل:
يتحقق DB_VERSION سجل في قاعدة البيانات، يجد تحديثات> الإصدار الحالي. ربما بواسطة التعليمات البرمجية. يدير كل "تحديث" ساري المفعول أو برنامج نصي أو إجراءات برمجية .. يتم تحديث DB_VERSION بعد كل منها، لذا يمكن إعادة تشغيل الفشل جزئيا من خلال.
العثور على DB_VERSION حاليا = 789؛ رمز متطور، أو سلسلة كبيرة إف طويلة، يجد تحديثات 790 وما فوق. أوبديت # 790، أوبغريد كوستومر & أمب؛ جداول الحساب؛ تحديث # 791، ترقية الجدول. تحديث # 792، إعادة ترتيب الجدول النظام؛ نسخة قاعدة البيانات الآن = 792.
هناك عدد قليل من المحاذير. هذا يعمل بشكل جيد بشكل معقول. الناس يدعون أنه ينبغي أن تكون موثوقة 100٪، ولكنها ليست كذلك.
قضايا النصوص غير مكتملة، والاختلافات في أطوال المجال أو الاختلافات في إصدارات الخادم يمكن أحيانا تسبب البرامج النصية / سكل لتمرير على بعض قواعد البيانات، ولكن تفشل على الآخرين.
العثور على البرامج النصية لتشغيل، يمكن أن تكون بسيطة مثل طريقة واحدة كبيرة مع العديد من إف البيانات. أو يمكنك تحميل البرامج النصية عبر الاكتشاف أو البيانات الوصفية، بشكل أكثر أناقة. في بعض الأحيان أنه من المفيد أن تكون قادرة على تضمين التعليمات البرمجية البرمجية، وليس فقط سكل.

بناء استراتيجية إصدار.
الانضمام إلى مجتمع دزون والحصول على تجربة عضو كامل.
تحميل المخطط الذي يمكن أن تتخذ شركة من أي مستوى النضج على طول الطريق حتى على نطاق المؤسسة التسليم المستمر باستخدام مزيج من أتمتة الإصدار الآلي، 20+ سنوات من الخبرة أتمتة التشغيل الآلي، والأدوات والممارسات ثبت الشركة تستفيد بالفعل .
على مدى السنوات القليلة الماضية اتبعت استراتيجية بناء الإصدار من التنسيق التالي:
استخدام النقاط العشرية يسمح لنا لتنفيذ استراتيجية لصناعة السيارات في زيادة لدينا يبني، وهذا يعني معرف البناء لا تحتاج إلى أن تتغير يدويا في كل مرة ننتج بناء، حيث يتم أخذ هذا الاهتمام من قبل نظام البناء. كل من مافين والنمل لديهم أساليب بسيطة لزيادة هذا العدد.
ضمان أن كل بناء له رقم إصدار فريد (من خلال زيادة معرف البناء) يسمح لنا بالتمييز بين البنيات، حيث لا يوجد بنائين من نفس المشروع سيكون لهما نفس معرف الإنشاء. يتم تغيير الأرقام الأخرى يدويا، وعند الاقتضاء.
النسخة الرئيسية - تتغير عادة عندما تكون هناك تغييرات كبيرة جدا على المنتج أو المشروع، مثل بعد إعادة كتابة، أو تغيير كبير في وظيفة.
الإصدار الإصدار - زيادة عندما يكون هناك الافراج عن مسؤول من المشروع الذي لا يعتبر تغيير النسخة الرئيسية. على سبيل المثال، قد نخطط لإصدار مشروع إلى عميل في إصدارين أو 3 إصدارات منفصلة. هذه الإصدارات قد تمثل بشكل جيد نفس النسخة الرئيسية (ويقول الإصدار 5) ولكننا لا تزال ترغب في أن تكون قادرة على تحديد حقيقة أن هذه هي الإصدارات المخطط لها لاحقا، وليس بقع.
رقم تصحيح - هذا يدل على التصحيح إلى إصدار موجود. وينعكس الإصدار الذي يجري تصحيحه في الإصدار الإصدار. وعادة ما تصدر التصحيح لإصلاح علة حرجة أو مجموعة من القضايا الرئيسية، وعلى هذا النحو يختلف عن إصدار "المخطط".
معرف البناء - هذه الزيادات التلقائية مع كل إصدار بناء في نظام سي. وهذا يضمن أن كل بناء له رقم إصدار فريد. عندما يتم زيادة النسخة الرئيسية أو الإصدار الإصدار أو رقم التصحيح، يتم إعادة تعيين معرف البناء إلى 1.
17.23.0.9 - يمثل هذا الإصدار 17.23. هو بناء ال 9 من هذا الإصدار.
17.24.0.1 - هذا هو الإصدار التالي، الإصدار 17.24. هذا هو أول بناء من 17.24.
17.24.1.2 - يمثل هذا التصحيح للإصدار 17.24. هذا هو أول التصحيح التصحيح، ويحدث أن يكون بناء الثاني من هذا التصحيح.
تحميل "مخطط عملي للتسليم المستمر" لمعرفة كيف الآلي أتمتة الإصدار يمكن أن تساعدك على بدء أو مواصلة التحول الرقمي شركتك.
مثل هذه المادة؟ اقرأ المزيد من دزون.
مجانا دزون ريفكارد.
الشروع في العمل مع عامل الميناء.
نشرت في دزون بإذن من جيمس بيتيلي، دزون مفب. انظر الى المقال الاصلي هنا.
الآراء التي أعرب عنها المساهمين دزون هي الخاصة بهم.

Comments

Popular posts from this blog

استراتيجيات التحوط تداول الفوركس

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

كيفية التنبؤ بدقة الخيارات الثنائية

مؤشر التنبؤ الخيارات الثنائية. مؤشر إشارة التنبؤ ثنائي الخيارات ل ميتاتريدر (MT4، MT5). 75٪ -80٪ ​​مستقرة يوميا معدل الفوز! ما يصل إلى 100 إشارات التداول في اليوم! 100٪ غير ريبينتينغ! 100٪ موثوق! يتنبأ السعر، اتجاه حركة السعر، يولد واضح شراء / بيع، دعوة / وضع إشارة تصل إلى 90٪ دقيقة. استنادا إلى الشبكات العصبية الخوارزمية التنبؤية. مرة واحدة تتلقى إشارة، تسجيل الدخول إلى حساب الوسيط الخاص بك ومكان الفوز التجارة. يعمل مع أي أداة مالية، أن الفوركس، الأسهم، المؤشرات أو السلع. يظهر أداء رائع في التداول الحقيقي. وقد اختبرت مع أكثر من 200+ ثنائي وسطاء الخيار ويظهر أرباح عالية مستقرة. يحتفظ بسجل التنبؤ على الرسم البياني. سهل الاستخدام. يعمل لأي وسيط. يولد تنبيه الصوت، وإرسال البريد الإلكتروني وإشعار إشارة إلى الأجهزة النقالة (قرص، الروبوت، اي فون) ثم يحدث إشارة التداول. ثنائي خيارات التنبؤ مؤشر الميزات. مؤشر الخيارات الثنائية يعمل مثل مزود إشارة على منصة مت الخاصة بك. ثنائي خيارات التنبؤ مؤشر المؤامرات إشارات في افتتاح كل الشموع، أبدا إعادة الطلاء أو تختفي. يولد ما يصل إلى 100 إشارات التداول ...