لا تنام! كيف تعلمنا إصدار 12000 تذكرة في الليلة الواحدة

تعتمد العملية غير المنقطعة لآلاف متاجر Pyaterochka إلى حد كبير على برامج موثوقة ومخصصة. الآن تستخدم الشبكة منتج GK SOFTWARE ، والذي تحسن من الإصدار المعبأ إلى تطوير الكود داخل X5. في مقالتنا ، سنخبرك بالمسار الذي سلكناه في تثبيت الإصدارات ، مما يضمن نمو أعمال الشركة من متاجر فردية على برامج جديدة إلى 15000 حاليًا.



حالات الأيام الماضية ، تقليد عميق


إن فترة السنوات العشر لتكنولوجيا المعلومات في العالم الحديث هي التاريخ. في عام 2009 ، أول سلسلة متاجر Pyaterochka تحولت للتو إلى GK ، ظهرت أول مهام تحديث البرنامج. بدت العملية شبيهة بهذا: العمل اليدوي بالكامل ، وتحليل السجلات مع "العيون" في كل متجر ، والمشاكل المستمرة في بدء البرنامج - عند الخروج ، تتوقف المعدات عن التهيئة ، ثم لا تبدأ خدمات GK على الخادم.

مع استقرار نظام GK وتطوير أدوات التحديث ، ذهبنا للنشر من خلال المكون المركزي لنظام GK - Storemanager - بمبلغ 100 - 200 متجر في الليلة (لكل موظف). ثم كان يعتبر إنجازا كبيرا. لضمان سرعة التحديث في 1000 متجر ، كان المتعاملون الخارجيون مطلوبين بالفعل - فقط مع فريق مكون من 6 أشخاص في الليلة يمكننا الوصول إلى العدد المطلوب من المنافذ. لإنشاء مهمة تحديث ، كان مطلوبًا "النقر فوق" كل متجر بيديه. احتوت كل مهمة على 50 كائنًا فقط ، نظرًا لوجود فرصة نظرًا لحدوث خطأ داخلي في فقد جميع الحالات بعد التحديث ، ومن ثم ستكون هناك حاجة إلى فحص يدوي كامل.



في تلك اللحظة ، تم إجراء الفحص الصحي للمتجر في البداية من خلال حالة المهمة ، وأخيراً من خلال الاتصال بسطح مكتب أمين الصندوق والتحليل المرئي لشاشة أمين الصندوق.

بالنسبة لعام 2014 ، كانت كثافة اليد العاملة في التحديث لشخص واحد في الليلة الواحدة 150 متجرًا.

الانطلاقة الأولى


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

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

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

يحتوي "الداعم" على قائمة واحدة بجميع المتاجر في لوحة القيادة ، والتحقق المسبق والحالات لكل مرحلة ، وأول فحص آلي بدائي بعد التحديث.



سمح تنفيذ مشروع "Booster" بتخفيض تكاليف العمالة بنسبة 6 مرات وتحديث حوالي 1000 متجر في الليلة بمساعدة موظف واحد (بحلول نهاية عام 2016). في ذلك الوقت كان إنجازا غير مسبوق.

تطوير النجاح


كانت المرحلة التالية هي تعزيز وتطوير نجاحنا. أطلقنا مجموعة من التحسينات تسمى "Booster2".

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



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

سمح "Booster" المحدّث بتحديث 1500 متجر لكل موظف في الليلة في نهاية عام 2017 - بداية عام 2018.

إلى الأمام إلى آفاق جديدة


1500 متجر في الليلة جيدة ، ويمكننا بسهولة إدارة جدول الإصدار ، واتخاذ خطوات إضافية للتثبيت ، ونحن على استعداد لتقديم تصحيح الأخطاء وتثبيت ما يصل إلى 6 مجموعات في مكتب النقد والمكتب الخلفي ، ولكن مهمة شركتنا هي بناء الجيل الجديد من متاجر التجزئة اليوم . تتمثل العملية والأساس التقني والتكنولوجي لرقمنة أعمالنا ، في جملة أمور ، في سرعة تطوير وتوزيع إصدارات البرامج الجديدة. وفي مارس 2019 ، تم تعيين مهمة طموحة - بحلول الخريف ، للوصول إلى تحديث 3000 خادم و 12000 مكتب نقد في ليلة واحدة. استخلصنا من واقعنا الحالي ، أجرينا مرة أخرى عملاً تحليليًا كبيرًا لتحديد الاختناقات في هذه العملية. تم تحديد المهام التي تتطلب الأتمتة والتحسينات التقنية وتطوير برامج متخصصة جديدة بالإضافة إلى إعادة التفكير بشكل عام. بالإضافة إلى ذلك ، قمنا بتشكيل مجموعة من المهام التنظيمية.

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

خريطة طريق

دعونا نتطرق إلى المهام المشكلة بمزيد من التفصيل. لقد حددنا 3 مجالات:

  • أهداف الحد من المخاطر ؛
  • المهام الإدارية والتنظيمية ؛
  • المهام لزيادة المخازن المحدثة في اليوم الواحد.

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

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

تتيح لك أداة التحقق الجديدة إمكانية تحديد صحة المتجر ككل بسرعة ، وإنشاء تقرير عن عدد أكبر من المعلمات وإظهار موظف الدعم على الفور تلك الكائنات التي لا يمكن فتحها في الصباح بعد التحديث. نحن نحلل كل من إطلاق البرنامج وخطوات تنزيله. نتحقق من تشكيل قاعدة أمين الصندوق على جانب المكتب الخلفي ، وتهيئة المعدات ، وخروج برنامج تسجيل النقد إلى وضع تسجيل أمين الصندوق ، إلخ. تعتمد العملية على أحدث ما في نظام شركتنا - "مراقبة الأعمال" باستخدام كومة تقنية حديثة (Filebeat ، Kafka ، ClickHouse ، Grafana).

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

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

آلية الاسترداد التلقائي : على جانب المتجر ، ستسمح بالتشخيص الذاتي للعقدة النقدية ، وتحديد استحالة بدء الخروج واستعادة النظام من النسخة الاحتياطية ، مما يتيح للمتجر أن يفتح في الصباح في معظم الحالات ، حتى لو لم يتمكن موظفو الدعم من الاتصال عن بُعد بحل المشكلة.

المهام الإدارية والتنظيمية. العمل الفعال للنظام هو نصف المعركة ؛ للنجاح ، من الضروري ضمان العمل الفعال للفريق.

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

أجرينا تدريبًا داخليًا للموظفين ، مع ضمان قابلية التبادل وإمكانية إعادة توزيع أي مهام. تم تعديل جدول عمل الفريق أيضًا - تم نقل جميع الموظفين لتحويل العمل في الليل ، مما أوجد الفرصة لضمان التحديثات المستمرة. هذا الخيار قمنا بتنفيذه هذا العام. الآن تجري تحديثات GK 7 أيام في الأسبوع دون تدخل موظفين إضافيين.

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

بادئ ذي بدء ، بدأنا في استخدام أداة التحديث "Booster" الحالية بأكبر قدر ممكن من الكفاءة. كشف اختبار الحمل عن أصعب العمليات ، وحددنا حدود الاحتمالات ، ووجدنا خيارات للتحجيم الأفقي لمثيلات التحديث.

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

منذ إطلاق المشروع ، حددنا خطوات لتنفيذ جميع وظائف "Booster" في Storemanager وشكلت هذه السنة متطلبات إضافية للتحسينات لضمان تحديث العدد المطلوب من المتاجر.

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

ما حدث بالفعل


في الوقت الحالي ، تم تنفيذ معظم المهام من خطتنا بالفعل:

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

تبقى المهمة هي تقديم فحص جديد للمتاجر وتحسين أداة التحديث الهدف.



ماذا بعد؟


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

المؤلفون

فاسيلي Golubev ، رئيس مجموعة توزيع إصدار البرمجيات # ITX5
يفغيني لابشين ، رئيس قسم دعم حلول المتجر # ITX5

Source: https://habr.com/ru/post/ar483800/


All Articles