Современная розница уже не делится на «магазин» и «онлайн». Покупатель приходит в торговый зал, выбирает товар через мобильное приложение, оплачивает у кассы, забирает заказ из пункта выдачи и возвращает покупку курьером. Все эти сценарии опираются на одну ИТ-инфраструктуру: учётную систему, кассовый софт, сервисы лояльности и склада. Если хотя бы одно звено становится недоступным — останавливается не отдельный канал, а весь бизнес. Поэтому требование «работать 24/7» давно перестало быть лозунгом и превратилось в архитектурную задачу.

1. Сколько стоит минута простоя в рознице

Любая остановка ИТ-сервиса в рознице бьёт сразу по нескольким направлениям одновременно. В торговом зале формируется очередь, кассы перестают пробивать чеки, программы лояльности не начисляют баллы. На сайте срываются заказы, а служба поддержки получает шквал обращений. На складе блокируются комплектация и отгрузка. Все эти эффекты работают на одну и ту же метрику — снижение выручки и снижение доверия к бренду.

Особенность омниканальной модели в том, что у бизнеса нет «безопасных» окон. Магазины работают с раннего утра до позднего вечера, ночью идут служебные обмены, а онлайн-витрина не закрывается никогда. Время на восстановление измеряется не часами, а минутами: каждая минута без касс — это десятки несостоявшихся транзакций по всей сети.

В этой логике ключевой вопрос — не «как быстро мы починим», а «как сделать так, чтобы клиент в принципе не заметил инцидент». Ответ лежит в плоскости архитектуры, а не отдельных серверов или резервных копий.

2. Архитектурная развилка: распределенные базы или единая система

Исторически в торговых сетях прижились две модели работы с учётными данными. Первая — распределенные информационные базы (УРИБ): в центре — головная база на сервере, на периферии — полноценные базы 1С на кассовых компьютерах магазинов. Магазин может торговать автономно даже при потере связи с центром, обмен идёт по расписанию.

Рис. 1 - Распределенная информационная база
Рис. 1 - Распределенная информационная база

Подход выглядит надёжным, пока сеть невелика. С ростом числа точек продаж он начинает давать сбои: остатки и цены отстают от реальности, аналитика бэк-офиса работает с задержкой, обновления платформы превращаются в многодневные операции. Каждая дополнительная точка — это ещё одно место потенциального сбоя обмена и ещё одна задача для команды поддержки.

Вторая модель — централизованная учётная система с тонкими клиентами или веб-кассами в магазинах. Все данные живут в одной базе, размещённой в дата-центре. Касса видит изменения цены или остатка в момент их внесения, бэк-офис получает аналитику в реальном времени, а ИТ-команда поддерживает один контур, а не «созвездие» локальных серверов.

Преимущества централизованной модели в долгосрочной перспективе перевешивают: быстрый старт, единый источник правды по остаткам, упрощённое масштабирование, безопасность данных и предсказуемая стоимость поддержки. Но у неё есть встроенный риск, который нельзя игнорировать: вся сеть зависит от одного центрального контура и каналов связи. Падение этого контура — это уже не локальный инцидент, а остановка всего бизнеса.

Вывод напрашивается сам: централизация даёт максимальный эффект только тогда, когда сам центр спроектирован с учётом отказа любого его компонента — включая отказ целого дата-центра.

3. Кейс: геораспределенный кластер в двух ЦОД

Именно эту задачу моя команда решала для розничной сети из более чем 20 торговых точек с центральным складом и интернет-магазином. Магазины работают с 8:00 до 23:00, онлайн-канал — круглосуточно, ночью идут служебные обмены между сервисами. Учётный контур построен на 1С:Предприятии в клиент-серверном режиме, к нему подключены Клеверенс и система лояльности. Цель проекта была сформулирована жёстко: исключить простои и обеспечить непрерывную работу касс при актуальных остатках по всей сети.

В основу решения легла идея единого кластера, узлы которого физически разнесены по двум независимым дата-центрам — ЦОД‑1 и ЦОД‑2. Это не «локальный кластер плюс резервная копия», а полноценный географический разнос: отказ одного ЦОД целиком — по питанию, охлаждению, магистральному каналу или из-за физического инцидента — не приводит к остановке учётной системы. Нагрузка автоматически продолжается на узлах второго ЦОД

Состав кластера

  • Microsoft SQL Server — кластер с единым виртуальным IP и общей базой данных, синхронизированной между ЦОД. При сбое основного узла запросы автоматически переводятся во второй дата-центр.

  • 1С:Предприятие — отказоустойчивый кластер серверов 1С с парой узлов в разных ЦОД.

  • Веб-сервер IIS — ферма IIS с балансировкой нагрузки между обоими дата-центрами.

  • Терминальные сервисы — терминальные серверы в обоих ЦОД, переключение пользовательских сессий через TS Broker.

  • Active Directory — два контроллера домена с распределенными ролями — аутентификация и групповые политики выживают при отказе любого узла.

  • Сетевая инфраструктура — кластерные пары маршрутизаторов в каждом ЦОД и дублирующие каналы между дата-центрами.

  • Магазины — основной интернет-канал плюс резервный LTE-канал с регламентом действий для персонала торговой точки.

Архитектура целиком собрана на стандартном стеке Microsoft (Windows Server Failover Cluster, AD, IIS, TS Broker) — без сторонних балансировщиков и экзотических компонентов. Это даёт администраторам предсказуемое поведение и снимает вопрос редких компетенций на рынке. Дополняют картину разведённые по приоритетам и окнам ночные обмены, мониторинг всех ролей кластера с алертами и ежедневный backup с регулярной проверкой восстановления.

Рис. 2 - Схема геораспределнного розничного контура 24/7 в двух ЦОД
Рис. 2 - Схема геораспределнного розничного контура 24/7 в двух ЦОД

4. Что изменилось для бизнеса

Ценность подобной архитектуры удобнее всего показывать в цифрах и сравнении «до/после». В таблице ниже — целевые показатели, на которые вышла сеть после внедрения проекта.

Показатель

До проекта

После проекта

Доступность критичных сервисов

≈ 98–99% с заметными простоями

Целевая 99,9%+ (≤ ~8 ч/год)

Время восстановления (RTO)

Часы, ручной разбор инцидента

Минуты, автоматический failover

Потеря данных (RPO)

До дня (последний backup)

Секунды/минуты (общее хранилище и журналы)

Связь магазин ↔ центр

Один канал, риск простоя точки

Основной канал + LTE-резерв

Защита от отказа ЦОД

Отсутствует — одна площадка

Геокластер ЦОД‑1 ↔ ЦОД‑2, авто-переключение

Актуальность остатков

С запаздыванием по обменам

Online по всей сети и складу

Трудозатраты на поддержку

Высокие, много ручных операций

Снижены за счёт типизации и мониторинга

За сухими цифрами стоят понятные эффекты для бизнеса. Сеть перестаёт зависеть от единичной точки отказа: плановое обслуживание любого узла можно проводить без остановки магазинов и онлайна. Покупатель видит актуальные цены и остатки в любой момент, программа лояльности отрабатывает корректно, а ночные служебные процессы не мешают онлайн-каналу. Команда ИТ переключается с реактивного режима «чиним, когда упало» на проактивный — сопровождение мониторинга и регулярные учения по переключению.

Итог

Распределённый отказоустойчивый контур в двух ЦОД вместе с резервированием каналов связи на стороне магазинов позволил клиенту перейти от модели «чиним, когда упало» к модели «работает всегда». Это снимает зависимость выручки от ИТ-инцидентов и формирует базу для дальнейшего масштабирования сети — открытия новых магазинов, расширения онлайн-канала и подключения новых сервисов без переделки инфраструктуры.

Для розницы, которая работает в режиме 24/7, это уже не «премиальная опция», а обязательное условие конкурентоспособности. Вопрос не в том, нужен ли геораспределенный контур, а в том, насколько быстро бизнес сможет к нему перейти.

Дмитрий Носов

Руководитель проектов в EFSOL