Выберите ваш город

Как выбрать сервер под PostgreSQL: CPU, RAM, NVMe, RAID, WAL и резервное копирование

19.05.2026
23 мин на чтение
7

Сервер под PostgreSQL нужно выбирать не по одному самому мощному параметру, а по балансу. Для подбора оптимального сервера важно учитывать такие вещи, как: тип запросов, объем базы, доля чтения и записи, требования к задержкам, запас по памяти, скорость дисков, надежность WAL, схема RAID, резервное копирование и репликация. Для большинства рабочих проектов разумная отправная точка — сервер с быстрыми ядрами, 64–128 ГБ RAM, NVMe enterprise-класса c настроенным зеркалированием или в RAID 10, отдельным планом хранения резервных копий и запасом по дискам минимум на рост базы, индексов, WAL и временных файлов.

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

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

Сначала определить тип нагрузки

У PostgreSQL нет одной универсальной конфигурации «для всех». Сервер для интернет-магазина, аналитической системы и внутренней CRM может отличаться даже при одинаковом объеме базы.

Для транзакционной нагрузки важны быстрые ответы и стабильная запись. Это интернет-магазины, биллинг, CRM, ERP, финансовые операции, системы заказов. Там много коротких запросов: создать заказ, обновить статус, списать остаток, записать платеж, проверить пользователя. В таких сценариях важны быстрые ядра процессора, низкая задержка дисков, надежная запись WAL и отсутствие резких просадок под нагрузкой.

Для нагрузки на чтение на первый план выходит память. Если база в основном отдает карточки товаров, справочники, профили пользователей, каталоги или данные для API, PostgreSQL выигрывает от большого объема RAM: чаще используемые таблицы и индексы остаются в кэше, а обращений к дискам становится меньше. Но память не исправит плохие индексы и не спасет, если активный набор данных намного больше доступного кэша.

Аналитическая нагрузка ведет себя иначе. Отчеты, агрегации, выгрузки, поиск по большим периодам и сложные соединения таблиц требуют больше ядер, больше памяти и высокой пропускной способности дисков. Если такие запросы запускать на той же базе, где идут короткие пользовательские транзакции, они могут мешать основной работе: занимать память, создавать временные файлы и повышать нагрузку на диски.

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

Ориентировочные конфигурации под разные сценарии

Точные параметры зависят от размера базы, числа запросов, структуры индексов, доли записи и требований к восстановлению. Но для первичной оценки можно использовать такие ориентиры.

Сценарий CPU RAM Диски RAID / зеркалирование Комментарий
Малый проект, внутренняя CRM 4–8 ядер 32–64 ГБ 2 серверных SSD (SAS или NVMe) RAID 1 Минимум для рабочей базы — не одиночный диск и не потребительский накопитель
Интернет-магазин, SaaS, API со средней нагрузкой 8–16 ядер 64–128 ГБ NVMe enterprise-класса RAID 1, желательно RAID 10 Важно заложить запас под индексы, WAL, backup и рост данных
Высокая транзакционная нагрузка 16–32 ядра 128–256 ГБ Несколько быстрых NVMe RAID 10 Смотреть не только пиковые IOPS, но и стабильность длительной записи
Аналитика и тяжелые отчеты 24–48 ядер 256–512 ГБ и выше Быстрые NVMe, иногда отдельный массив под временные операции RAID 10 Желательно отделять аналитику от основной транзакционной базы
Критичная база с высокой доступностью Основной сервер + реплика Сопоставимый запас на каждом узле NVMe + отдельное хранилище backup RAID 10 / RAID 1 Нужны репликация, архивирование WAL и проверенное восстановление

Эти значения не стоит воспринимать как жесткую норму. Небольшая база с очень частой записью может требовать более быстрых дисков, чем крупная база со спокойным чтением. База на 2 ТБ не обязательно требует 2 ТБ RAM, если активно используется только небольшая часть таблиц и индексов. И наоборот: база на 200 ГБ может работать плохо, если все запросы постоянно сортируют и соединяют большие выборки.

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

CPU: сколько ядер нужно PostgreSQL

CPU и нагрузка сервера PostgreSQL

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

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

Для небольших рабочих систем обычно достаточно 4–8 ядер. Для большинства средних проектов разумнее начинать с 8–16 ядер. Конфигурации с 24 ядрами и выше нужны, когда есть много активных соединений, тяжелые отчеты, параллельные запросы, крупные операции обслуживания или высокая транзакционная нагрузка.

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

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

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

RAM: почему память часто важнее лишних ядер

RAM для сервера PostgreSQL

Оперативная память для PostgreSQL нужна не только «чтобы база помещалась в RAM». Она используется для кэширования данных и индексов, сортировок, соединений таблиц, обслуживания индексов, vacuum и работы активных запросов. Чем чаще нужные страницы находятся в памяти, тем меньше база обращается к дискам и тем стабильнее время ответа.

При этом нельзя просто отдать всю память PostgreSQL. Часть RAM должна оставаться операционной системе и файловому кэшу. В PostgreSQL есть собственный буфер, память на операции сортировки и соединения, память на обслуживание, а также параметры, которые помогают планировщику оценивать доступный кэш. В официальной документации PostgreSQL отдельно описаны shared_buffers, work_mem, maintenance_work_mem и другие параметры потребления ресурсов. Например, для выделенного сервера с 1 ГБ RAM и выше документация называет 25% памяти разумной стартовой точкой для shared_buffers, но также подчеркивает, что PostgreSQL опирается и на кэш операционной системы.

Особенно осторожно нужно относиться к памяти на сортировки и соединения. Если выставить слишком большое значение на одну операцию, а затем получить десятки параллельных запросов, суммарный расход памяти может оказаться неожиданно высоким. Это одна из причин, почему сервер с большим объемом RAM все равно может сталкиваться с нехваткой памяти при неудачной настройке и тяжелых запросах.

Для небольших рабочих баз 32 ГБ RAM можно считать нижней разумной границей. Для большинства средних проектов лучше закладывать 64–128 ГБ. Для крупных баз, отчетов, большого числа соединений и активных индексов — 256 ГБ и выше.

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

Диски: NVMe, SAS SSD, SATA SSD и HDD

Дисковая подсистема — один из самых критичных элементов сервера под PostgreSQL. Для базы важна не только линейная скорость в мегабайтах в секунду. Гораздо важнее случайное чтение, случайная запись, задержка операций, устойчивые IOPS, ресурс перезаписи и защита от потери данных при сбое питания.

NVMe enterprise-класса — лучший выбор для большинства производительных PostgreSQL-серверов. Такие накопители дают низкие задержки и высокую производительность при параллельной нагрузке. Они особенно важны там, где много записи, активно меняются индексы, часто выполняются короткие транзакции и большой поток идет в WAL. Но важно выбирать именно серверные модели, а не потребительские SSD. У потребительских накопителей могут быть просадки при длительной записи, меньший ресурс перезаписи и слабее защита от аварийного отключения.

SAS SSD тоже может быть хорошим вариантом, особенно в существующей серверной инфраструктуре. Такие диски обычно уступают NVMe по задержкам и пиковой производительности, но могут быть предсказуемыми и надежными. Для умеренной нагрузки они часто подходят лучше, чем дешевые SATA SSD.

SATA SSD допустимы для небольших проектов, тестовых сред, внутренних сервисов и баз с невысокой записью. Но при росте числа запросов и объема данных они быстрее становятся узким местом. Для критичных систем SATA SSD стоит использовать осторожно.

HDD для активной базы PostgreSQL почти всегда плохой выбор. Жесткие диски можно использовать для архивов, резервных копий, холодных данных или вторичных задач. Но для базы с активными индексами, частой записью и случайным чтением задержки HDD слишком велики. Даже если линейная скорость выглядит приемлемо, случайный доступ будет ограничивать производительность.

Отдельно нужно учитывать свободное место. NVMe и SSD могут хуже работать при сильном заполнении, а PostgreSQL требует места не только под таблицы. Нужен запас под индексы, WAL, временные файлы, обслуживание, перестроение индексов и аварийные ситуации. Работать «впритык» для базы данных опасно.

RAID: зачем он нужен и почему не заменяет резервное копирование

RAID для сервера PostgreSQL

RAID нужен для отказоустойчивости дисков и, в некоторых схемах, для повышения производительности. Но RAID не является резервной копией. Он не защищает от случайного удаления данных, ошибки приложения, неудачной миграции, повреждения таблиц, шифровальщика или неправильной команды администратора.

Вариант Где уместен Плюсы Минусы Рекомендация
RAID 1 Небольшие базы, два диска Простое зеркалирование Ограниченный прирост производительности записи Нормальный минимум для малых проектов
RAID 10 Производительные PostgreSQL-серверы Хорошая скорость и отказоустойчивость Требует больше дисков Основной вариант для серьезной нагрузки
RAID 5 Архивные или малонагруженные сценарии Экономит место Слабее при записи, долгое восстановление массива, высокие риски сбоев Не лучший выбор для активной базы
RAID 6 Большие массивы, где важна емкость Выдерживает отказ двух дисков Высокая цена записи и долгий rebuild Использовать осторожно
Без RAID, но с репликацией Специальные архитектуры Отказоустойчивость строится на уровне кластера Одиночный узел остается уязвимым к отказу диска Только при понятной схеме backup и переключения

Для PostgreSQL чаще всего рекомендуют RAID 10 или зеркалирование NVMe, потому что база активно пишет данные и журнал предзаписи. RAID 5 и RAID 6 могут быть привлекательны по полезному объему, но для нагруженной базы их цена записи и сложное восстановление после отказа часто становятся проблемой.

Если используется аппаратный RAID-контроллер, важно понимать, как работает кэш записи. Кэш без защиты при сбое питания может привести к потере данных. Документация PostgreSQL прямо обращает внимание на надежность записи, fsync, поведение дискового кэша и риск ситуаций, когда устройство сообщает об успешной записи раньше, чем данные действительно надежно сохранены.

Программное зеркалирование тоже может быть нормальным решением, если оно правильно настроено и протестировано. Особенно в современных системах с NVMe, где классический аппаратный RAID не всегда является лучшим вариантом. В любом случае нужно проверять не только отказ одного диска, но и поведение сервера при восстановлении массива: именно в этот момент нагрузка на диски может резко вырасти.

WAL: почему журнал предзаписи нельзя игнорировать

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

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

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

На больших системах иногда рассматривают отдельный быстрый накопитель или отдельный массив под WAL. Это может помочь, если журнал действительно стал узким местом. Но делать так нужно после измерений, а не «на всякий случай». Если отдельный диск под WAL окажется менее надежным, чем основной массив, архитектура станет хуже, а не лучше.

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

Еще один риск — архивирование WAL. Если оно настроено неправильно или внешнее хранилище недоступно, WAL-файлы могут накапливаться и занимать место. Отстающая реплика тоже может удерживать старые WAL-файлы. Поэтому место под WAL нужно закладывать с запасом, а мониторинг свободного пространства обязателен.

IOPS и задержки: какие цифры важны на практике

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

Для коротких транзакций особенно важна задержка записи. Пользователь нажал кнопку, приложение изменило данные, PostgreSQL записал WAL — и только после этого операция считается надежной. Если запись иногда занимает не миллисекунды, а десятки или сотни миллисекунд, приложение будет ощущаться медленным даже при высоких заявленных IOPS.

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

Для отчетов важны и пропускная способность, и память. Если сортировки, соединения и агрегации не помещаются в RAM, PostgreSQL создает временные файлы на диске. Тогда даже запрос «только на чтение» начинает активно нагружать хранилище.

Для массовых обновлений нагрузка двойная: меняются таблицы и индексы, плюс растет запись WAL. Для резервного копирования важна способность читать большой объем данных, не разрушая производительность основной базы. Поэтому при sizing нужно учитывать не только обычную работу, но и пики: обновления, отчеты, vacuum, создание индексов, backup, восстановление реплики.

Цифры из спецификаций накопителей полезны, но их недостаточно. Важно смотреть поведение при длительной записи, смешанной нагрузке, заполнении диска и синхронных операциях. Сервер под PostgreSQL должен работать стабильно не только первые минуты теста, а постоянно.

Резервное копирование: выбирать сервер нужно с учетом восстановления

Резервное копирование и репликация PostgreSQL

Резервное копирование — это не просто наличие копии базы. Важнее ответить на два вопроса: сколько данных можно потерять при аварии (RPO) и за какое время нужно восстановить работу (RTO). Если бизнес может потерять только несколько минут данных, нужна одна архитектура. Если допустима потеря данных за сутки, требования будут другими. Если база должна вернуться в работу за 15 минут, это совсем другой уровень подготовки, чем восстановление «когда получится».

Для PostgreSQL обычно важны базовые резервные копии, архивирование WAL, хранение копий отдельно от основного сервера и регулярная проверка восстановления. Нельзя считать защитой только RAID. Нельзя считать полноценным backup только реплику: если пользователь или приложение удалит важные данные, ошибка может быстро попасть на реплику.

Хорошая схема резервного копирования должна учитывать размер базы, скорость чтения с основного сервера, пропускную способность сети, место во внешнем хранилище и нагрузку на диски. Для большой базы создание копии может длиться долго. Восстановление может длиться еще дольше. Поэтому проверять нужно не только факт создания backup, но и реальное восстановление на отдельной площадке или тестовом сервере.

PostgreSQL поддерживает непрерывное архивирование WAL и восстановление на точку во времени. Это позволяет восстановить базу не только на момент полной копии, но и на более точный момент, если архив WAL был корректно сохранен. PostgreSQL описывает такую схему как сочетание базовой резервной копии и последовательного применения архивированных WAL-файлов.

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

Репликация и высокая доступность

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

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

Синхронная репликация повышает надежность фиксации данных, но может увеличить задержку записи: основной сервер ждет подтверждения от другого узла. Асинхронная репликация обычно быстрее, но при аварии возможна потеря последних изменений. Выбор зависит от того, что важнее для конкретной системы: минимальная задержка или минимальная потеря данных.

Железо для реплики не должно быть случайным. Если основной сервер быстрый, а реплика построена на медленных дисках и малом объеме RAM, она может постоянно отставать. Это особенно опасно при высокой записи, больших WAL-потоках, массовых обновлениях и долгих отчетах. Сеть между узлами тоже должна выдерживать поток изменений.

В официальной документации PostgreSQL высокая доступность, балансировка нагрузки и репликация рассматриваются как отдельный архитектурный слой, а не как замена надежному хранению и резервным копиям. Для практического выбора сервера это означает, что нужно считать не только основной узел, но и реплику, сеть, место под WAL, сценарий переключения и порядок восстановления после сбоя.

Типовые ошибки при выборе сервера под PostgreSQL

  1. Выбирать сервер только по числу ядер. Современный многоядерный CPU выглядит убедительно в спецификации, но PostgreSQL может упираться в диски, память, блокировки, структуру индексов или неудачные запросы. Для многих транзакционных систем быстрые ядра и низкая задержка важнее, чем максимальное количество потоков.
  2. Ставить базу на одиночный SSD. Даже быстрый накопитель остается единой точкой отказа. Для рабочей базы нужен минимум зеркальный массив, а для серьезной нагрузки чаще выбирают RAID 10 или сопоставимую схему отказоустойчивости.
  3. Использовать потребительские NVMe для критичной базы. Они могут показывать хорошие цифры в коротких тестах, но проседать при длительной записи, иметь меньший ресурс и хуже переносить аварийное отключение питания.
  4. Экономить на RAM. Когда часто используемые данные и индексы не помещаются в память, PostgreSQL чаще обращается к дискам. Даже быстрые NVMe не всегда компенсируют нехватку кэша.
  5. Не учитывать WAL. Журнал предзаписи влияет на запись, репликацию, резервное копирование и восстановление. Если для WAL не хватает места или диски плохо держат синхронную запись, база может замедляться или останавливаться.
  6. Считать RAID резервным копированием. RAID помогает пережить отказ диска, но не защищает от логических ошибок и удаления данных.
  7. Не тестировать восстановление. Backup, который никогда не восстанавливали, нельзя считать надежной защитой. Для критичной базы нужно регулярно проверять, что копии читаются, WAL применяются, а восстановление укладывается в допустимое время.
  8. Размещать тяжелые отчеты на основной базе без запаса. Такие запросы могут занимать память, создавать временные файлы и мешать коротким транзакциям.
  9. Работать почти без свободного места. PostgreSQL требует запас под WAL, индексы, временные файлы, vacuum, перестроение индексов и резервные операции.
  10. Выбирать сервер только под текущую нагрузку. База почти всегда растет: появляются новые таблицы, индексы, отчеты, интеграции и требования к хранению истории. Сервер нужно выбирать с горизонтом хотя бы на ближайший год.

Чек-лист перед выбором сервера

Перед покупкой или арендой сервера под PostgreSQL стоит ответить на несколько вопросов:

  • какой текущий размер базы;
  • каким будет размер базы через год;
  • сколько занимают индексы;
  • что преобладает: чтение, запись, обновления или отчеты;
  • сколько активных пользователей и соединений;
  • есть ли тяжелые аналитические запросы;
  • какая задержка ответа допустима для приложения;
  • сколько данных можно потерять при аварии;
  • за какое время нужно восстановить базу;
  • нужна ли реплика;
  • будет ли чтение с реплики;
  • где будут храниться резервные копии;
  • сколько места нужно под WAL;
  • сколько места нужно под временные файлы;
  • какой запас RAM нужен для роста;
  • какой запас по дискам нужен для индексов, обслуживания и backup;
  • кто будет следить за autovacuum, репликацией, архивированием WAL и свободным местом.

Хороший сервер под PostgreSQL — это не максимальная конфигурация в прайсе, а сбалансированная платформа под конкретную нагрузку. Для одной базы важнее быстрые ядра, для другой — большой объем RAM, для третьей — диски с устойчивой записью, для четвертой — репликация и быстрое восстановление.

Заключение

PostgreSQL требует системного подхода к выбору железа. CPU, RAM, NVMe, RAID, WAL, резервное копирование и репликация должны рассматриваться вместе. Быстрый процессор не компенсирует слабые диски, большой объем памяти не заменяет нормальный backup, а RAID не спасает от ошибок приложения.

Для большинства серьезных проектов хорошей отправной точкой будет сервер с быстрыми ядрами, 64–128 ГБ RAM или больше, NVMe enterprise-класса, RAID 10 или зеркалированием, запасом свободного места и продуманным архивированием WAL. Для критичных баз нужно сразу проектировать не один сервер, а схему восстановления: реплику, внешнее хранилище резервных копий, мониторинг, тесты восстановления и понятный порядок переключения при сбое.

Самая надежная стратегия — сначала описать нагрузку, требования к задержкам и восстановлению, а уже потом выбирать конфигурацию. Сервер под PostgreSQL должен не только быстро работать сегодня, но и выдерживать рост данных, пики записи, тяжелые отчеты, обслуживание, резервное копирование и аварийное восстановление.


Автор

СЕРВЕР МОЛЛ

Поделиться
Комментарии
(0)
Ещё не добавлено ни одного комментария
Написать комментарий
Поля, отмеченные *, обязательны для заполнения

Нажимая кнопку «Отправить», я даю согласие на обработку и хранение персональных данных и принимаю соглашение

Больше статей

Подписаться на новости

Нажимая кнопку «Подписаться», я даю согласие
на обработку и хранение персональных данных и принимаю соглашение
client consultations icon-delivery discount icon-facebook franchise icon-google_plus it-solutions icon-jivosite icon-menu icon-up icon-message payment icon-recall shops-local shops-network icon-solutions icon-support tasks icon-twitter Group 8 icon-user icon-viber icon-vk icon-watsup icon-watsup-2
Мы используем файлы 'cookie', чтобы обеспечить максимальное удобство пользователям.