детали проекта
«Русклимат» - едва ли не самый сложный проект за всю нашу историю, работа над которым заняла почти 3 года.
Чтобы понять, почему, необходимо, как говорит популярный телеканал, «показать все, что скрыто» от глаз интернет-пользователей.
Что такое федеральный интернет-магазин «Русклимат»:
- 900 000 уникальных посетителей в сутки;
- 200 000 товаров в каталоге;
- 15 ценовых кластеров;
- 3 500 городов;
- 360 складов;
- 14 типов обмена данными с учетными системами;
- мгновенная синхронизация корзины с CRM-системой для расчета скидок, акций и добавления подарков к заказу;
- сложнейшая система расчета стоимости и сроков доставки в любой населенный пункт России по цепочке федеральных, региональных и межгородских складов.
Что такое информационная среда «Русклимат»? Со стороны компании это:
- номенклатурно-справочная система с данными о каталоге товаров, категориями, описаниями, характеристиками, фотографиями;
- CRM-система для обслуживания розничных и оптовых клиентов, в том числе:
- система хранения клиентов и заказов;
- система хранения географических данных;
- система хранения цен;
- система расчета скидок и акций;
- 50 складских систем, по одной в каждом из региональном филиале с данными о складских остатках на 360-ти складах;
Со стороны Интернета это:
- десятки интернет-магазинов разных брендов и типов климатической техники;
- десятки промо-сайтов для брендов техники;
- корпоративные веб-ресурсы «Русклимат»: сайт о системе обучения, сайт о карьере, корпоративный портал и др.;
- оптовая торговая площадка.
А теперь представьте, что все эти системы внутри «Русклимат» и сайты снаружи «Русклимат» должны постоянно синхронизировать данные между собой: каталоги, цены, акции, условия доставки, заказы и так далее. При этом обмен должен быть надежным, данные сохранять свою целостность, а обменивающиеся системы не «падать» от перегрузок.
Для этого нами была создана система с кодовым именем «Шлюз», по сути представляющая собой шину обмена данными (enterprise service bus, ESB - англ.), то есть систему, являющуюся единой точкой обмена данными, обеспечивающую запись, преобразование, сохранность, актуальность, целостность данных, гарантию их получения от систем-источников и гарантию доставки системам получателям.
Для чего нужен «Шлюз»:
- обмены данными перестают представлять собой запутанный клубок, где все обмениваются со всеми, потому что каждая система обменивается данными только со «Шлюзом»;
- системам не нужно подстраиваться под форматы и структуру обмена друг друга, «Шлюз» выполняет все необходимые преобразования данных и предоставляет для каждой системы удобный ей формат отправки и получения, начиная от старого доброго CSV и XML-обмена, до продвинутой REST-архитектуры;
- во много раз снижается нагрузка на все процессы обмена - высокой мощностью, способной выдержать натиск большого количества и объема обменов обладает только сервер «Шлюза», остальные системы обращаются к нему в удобное для них время, без риска «уронить» себя или своих соседей;
- система очередей и выдачи «квитанций» участникам обмена позволяет обеспечить «целостность» данных и быть уверенным, что ничего не потеряно в процессе передачи;
- новые системы и новые сайты легко подключаются к «Шлюзу» благодаря интерфейсу администратора, позволяющего добавлять и редактировать как маршруты обменов, так и состав систем-участников обменного процесса.