Перейти к содержимому

Сорок сайтов в одном инстансе Odoo

Что это экономит, что становится общим и когда общие воркеры начинают мешать.
11 сентября 2026 г. от

Сорок интернет-магазинов, сорок доменов, сорок дизайнов - и одна Odoo за всеми ними. Это не фокус: Odoo умеет несколько сайтов из коробки. О чём не пишут - где именно приходит счёт за это удобство.

Сорок витрин делят один инстанс Odoo, один каталог и один пул воркеров
Общее всё - включая воркеров.

Что даёт один инстанс

Один каталог, один склад, один список заказов. Товар, поправленный один раз, появляется на каждой витрине, которая его продаёт, с тем же остатком, что видят остальные. Клиент, заказавший в двух магазинах, в системе один, а не два.

И одно место для выкатки. Сорок отдельных установок - это сорок обновлений, сорок бэкапов, сорок наборов доступов и сорок счетов каждый месяц. Правка в оформлении заказа пишется один раз и приезжает на все сорок одновременно.

Что у каждого сайта своё

Домен, тема, меню, языки и цены принадлежат сайту, а не инстансу. Два магазина на одной Odoo могут не иметь ничего общего внешне и продавать один и тот же товар по разной цене в разной валюте.

Содержимое тоже разделено: страницы, статьи и товары привязаны к сайту, и посетитель одной витрины не наткнётся на страницы другой. Разделение - это поле в записи, и именно поэтому оно дёшево обходится.

Где это бьёт: воркеры

Все сорок сайтов делят один пул воркеров Odoo. Воркер - это процесс, и он обслуживает один запрос за раз. Сорок витрин не получают в сорок раз больше процессов - они получают тот же пул, что и одна.

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

Это и была вторая причина вынести поиск из базы, а не только размер каталога: поиск, который занимал восемь секунд , держал воркеров сорока сайтов.

Odoo.sh или свой сервер

На Odoo.sh несколько сайтов работают ровно так, как должны, а масштабирование и бэкапы достаются без возни с сервером. Чего не достаётся - права запустить что-нибудь рядом с Odoo: ни своего Redis, ни своего сервиса. Всё лишнее живёт снаружи и отвечает по сети.

На своём сервере с Enterprise дополнительные сервисы стоят в одной подсети с Odoo. Меньше переходов, ниже задержки и полный контроль над тем, что там крутится, - в обмен на обязанность это крутить самому.

Когда один инстанс - неправильный ответ

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

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

А если инстанс ещё не выбран, начните на шаг раньше - с цены Odoo, Salesforce, HubSpot и SAP для команды из десяти человек.

Интересно, как те же системы ведут себя изо дня в день? Odoo в эксплуатации: что держит, что ломается, чего нет в документации.

Поиск по 110 000 товаров занимал восемь секунд. Теперь - одну.
Почему лечение было не в большем сервере и во что обошлась эксплуатация.