Case study

еБаг

еБаг

Впечатлението ни от Delta.BG е много позитивно. В началото техническият им екип изслуша старателно изискванията ни и предложи архитектура базирана на нашето предложение, но с добавени реални подобрения. Отделиха достатъчно време, за да отговорят на притесненията ни и да ни помогнат да намерим точно на какво се дължи проблема. През цялото време на работата по проекта, те демонстрираха отлични технически знания, много добра комуникация и бързо изпълнение на задачите. Бяха напълно отворени към споделяне на сорс-код и ноу-хау. Това ни вдъхна увереност, че ще можем да поддържаме решението дългосрочно. Накрая в production фазата, Delta.BG отново реагираха адекватно и бързо за решаване на малкото неизбежно възникнали проблеми. След този проект се убедихме, че е полезно да работим с Delta.BG и за в бъдеще, защото самите ние можем да научим доста от тях.

Директор IT

Head of IT

  • Кои са eBag.bg?

    eBag е специализиран онлайн магазин, който предлага над 10 000 висококачествени хранителни продукта от подбрани ферми със затворен цикъл, включително месо, мляко, плодове и зеленчуци, както и масовите продукти от търговската мрежа. Всички тези продукти са налични с доставка до 3 часа. Над 35 000 домакинства избират да пазаруват от eBag.

    Мисията на eBag е чрез силата на иновациите и технологиите да предоставя на хората достъп до качествена храна и по-добър живот.

  • Проблемът

    В периода на кризисните мерки срещу разпространението на COVID-19 поръчките през платформата започват да нарастват експоненциално. Междувременно, на онлайн пазара излизат големите хранителни вериги и редица нови лица, принудени да търсят нов начин за реализация на продуктите си. Магазинът се изправя пред изключителна възможност за растеж, но всяка грешна стъпка би означавала безвъзвратно загубени възможности, защото конкуренцията се ожесточава/нараства.

    В този ключов момент някои от компонентите на онлайн системата започват да спират внезапно. Програмистите успяват да реагират навреме, но случаите зачестяват и е въпрос на време да се появят първите разочаровани клиенти. От eBag подозират, че липсата на сървърни ресурси за обработка на  нараснал трафик е в основата на проблема. Дали обаче просто добавяне на хардуер ще реши проблема и как точно да бъде направено това, остават като въпроси, изискващи по-специализирано изследване.

  • Решението

    В началото на Април 2020-та eBag се обърнаха към нас за съдействие в разрешаването на проблема, който спира развитието на компанията в този важен за нея момент. Благодарение на това че инфраструктурата на магазина е разположена в клауда на Делта.бг, ние имахме поглед върху текущите ресурси и имахме възможност бързо да направим изчерпателен анализ на ситуацията. Оказа се, че обикновено увеличение на ресурсите би закърпило проблема, но при допълнителен ръст на трафика, той би възникнал отново. Оптималното решение трябваше да включва комбинация от хоризонтално увеличение на сървърните ресурси, пълно автоматизиране на процеса по деплоймънт и промяна на алгоритъма за откриване на грешки и отпадания.

    Вертикално или хоризонтално скалиране? 

    Вертикално увеличение (или скалиране, в по-общия вариант) обикновено означава добавяне на допълнителни хардуерни ресурси (CPU, RAM, storage) към същата машина. Хоризонтално увеличение означава добавяне на допълнителни обработващи единици към вече съществуващите и разпределяне на натоварването между тях.

    Ако си представите лавка за закуски, обслужваща наплив от клиенти, вертикалното скалиране би представлявало увеличаване на броя на персонала в лавката с нарастването на броя клиенти. Хоризонталното скалиране би представлявало отваряне на паралелни лавки, копия на оригиналната, с нарастването на броя на клиентите. Когато сървърните ресурси не достигат, логичният въпрос е в коя посока да е увеличението. В случай че сървърът, с който разполагаме, е наша собственост, в повечето случаи имаме само един вариант – вертикално увеличение (дори хибридният вариант със собствен хипервайзор по същество е вертикално увеличение на ресурсите). Разполагайки инфраструктурата си в клауда, eBag имаха възможност да скалират хоризонтално, осигурявайки си по този начин следните несъмнени предимства на този подход:

    • Неограничена възможност за ъпгрейд на хардуера,
    • Тясно обвързване между разходите и приходите от дейността,
    • По-голяма стабилност на системата,
    • Отпадане необходимостта да се плаща постоянно за пиков капацитет.

    Автоматизация на процеса по деплоймънт.

    За да бъде реализирано гъвкавото хоризонтално скалиране на инфраструктурата според утвърдените съвременни практики, предложихме миграция към Ansible* като СМ (configuration management) решение. Предимствата на този подход пред шел скриптовете са много, но някои от по-съществените са параметризация, темплейти на конфигурационните файлове и пълна автоматизация на процеса по деплоймънт. Последното е ключовият момент в оптимизацията на работата на програмистите на компанията, защото им позволява, след като са тествали промените по магазина, да ги заредят на живия сайт само с натискането на един бутон – без прекъсване и без потребителите да забележат, че в момента се извършва някаква работа по него. А ако все пак нещо не сработи, както дори и на най-добрите програмисти се случва, автоматизираният процес по деплоймънт позволява възвръщане към предишна стабилна версия на сайта, за да може да се тества отново кодът за грешки**. Технологиите, в комбинацията, която предложихме, бяха напълно отворени решения, които могат да бъдат проверени от трета страна или да им бъде осигурена поддръжка от друга компания, без клиентът да бъде заключен към определена услуга или разработчик.

    Прилагане на най-добрите практики за откриване на грешки и отпадания.

    Дори с най-гъвкавата и устойчива инфраструктура, дори с напълно автоматизиран процес на деплоймънт, проблеми в системите са възможни и е необходимо да бъдат бързо открити и още по-бързо отстранени. Достъпването на всеки отделен сървър за проверка на логовете му бързо се превръща от изпитание в кошмар с нарастването на броя на сървърите, съобразно трафика. eBag знаеха, че централизиране на логовете би предотвратило такъв сценарий, но им бе необходимо конкретно решение. Предложихме ELK Stack*** - на всеки сървър трябваше да бъде инсталиран шипър за логове, който щеше да позволи централизирано търсене, съхранение и обработка на тази важна информация. Освен оптимизацията на работата, това щеше да освободи от съответните сървъри ресурси, които могат да бъдат използвани за поверената им задача. Отново предложеното решение бе open source, което спестяваше на клиента разходи за лицензи и такси.

    Така разработеният проект за обновление на системата на магазина бе представен на eBag и, след одобрението на клиента, Делта.бг успя да го тества и внедри в рамките на три седмици. За целите на процеса бе изградена виртуална тестова среда, в която копие на обновения онлайн магазин бе подложено на симулации на пиков трафик. Резултатите се оказаха отлични и пристъпихме към обновлението. То бе извършено без прекъсвания на услугата, така че нито един клиент на магазина да не забележи.

  • Резултатът

    След промените, екипът на eBag може да бъде спокоен, че сайтът ще работи без прекъсвания, независимо от трафика, който ги очаква. Магазинът може да става както малък, така и много голям, за да посрещне всичките си клиенти и да ги обслужи без забавяне. Отпаданията на услуги в пиков час са вече само лош спомен от миналото. Процесът по обновяване на сайта е автоматизиран и улеснява работата на разработчиците. Промените могат да бъдат въвеждани своевременно, за да отговорят на моментните нужди на маркетинговата им стратегия. При възникване на грешки в системите, те биват откривани по-лесно и по-бързо. Сайтът е скалируем, стабилен и гъвкав. Благодарение на направените промени, eBag могат не само да обработят допълнителния трафик, но и уверено да разраснат бизнеса си към други градове, посрещайки нови увеличения на клиентската и доставната си база. Инфраструктурата им ще издържи на натиска.

Мнения на други наши клиенти

Успехът на нашите клиенти е успех за Delta! Виж всички

HiComm

Тъй като сайтовете на Хайком и Гоу Гайд са ни основен бизнес инструмент, всякакви смущения в работата на редакторите с бекенда, както и всякакво прекъсване на достъпа до медиите са критични проблеми за нас. След като преминахме на клауд решение в Делта тези проблеми изцяло отпаднаха. 

Никола Папукчиев

Главен редактор и управляващ партньор, HiComm

Prodesign.

Когато държите на лично отношение в работата си с клауд доставчика ви, то със сигурност ще го откриете при колегите от DELTA!

Мариан Найденов

Управител, Prodesign.