Интерпретация:
• < 15 оп/с – очень низкая производительность, требуется апгрейд.
• 15–30 – средняя, возможны задержки при 20+ пользователях.
• 30–50 – хорошая, комфортная работа.
• >50 – отличная, подходит для высоких нагрузок. Важно: тест однопоточный и чувствителен к тактовой частоте CPU, настройкам энергосбережения и топологии NUMA. При тестировании убедитесь, что governor установлен в performance: cpupower frequency-set -g performance. Для виртуальных машин результаты могут быть ниже реальных.
🐧 Linux + PostgreSQL – сбор параметров и диагностика← На главную
⚠️ Внимание: Некоторые команды требуют прав суперпользователя (sudo). Запускайте их от имени пользователя с правами sudo.
📦 Если команда iostat не найдена – установите пакет sysstat:sudo apt update && sudo apt install sysstat -y
🗂️ Тип конфигурации 1С:Влияет на расход RAM сервера приложений (БП: ~2 ГБ/польз., УТ/ЗУП: ~2.5 ГБ/польз., ERP/КА: ~3.5 ГБ/польз.)
⚡ Результат теста Гилёва (TPC-1C):(оп/с – условных операций в секунду)
Параметр
Команда для выполнения
Значение
Норма / примечание
👥 Активных пользователей (пик)
оцените по журналу 1С
ключевой параметр
💾 Размер всех БД (ГБ)
sudo -u postgres psql -c "SELECT round(sum(pg_database_size(datname))/1024.0/1024,1) FROM pg_database;"
💡 Расширенные рекомендации (Linux + PostgreSQL)
• pgBouncer: При 50+ пользователях обязательно используйте pgBouncer в режиме transaction pooling. PostgreSQL создаёт отдельный процесс на каждое соединение (~5–10 МБ RAM), без пулера при 200 соединениях СУБД теряет до 20% производительности на управлении процессами.
• Антивирус: Добавьте каталог данных PostgreSQL ($PGDATA) и рабочие каталоги 1С в исключения. Сканирование WAL-файлов в реальном времени убивает производительность.
• RAM-диск для временных файлов: Смонтируйте pg_stat_temp в tmpfs: mount -t tmpfs -o size=256m tmpfs /var/lib/postgresql/data/pg_stat_tmp.
• huge_pages: Включите transparent huge pages для PostgreSQL: echo always > /sys/kernel/mm/transparent_hugepage/enabled.
• NUMA (многопроцессорные системы): На серверах с двумя и более сокетами CPU используйте numactl --interleave=all для PostgreSQL и для сервера 1С, чтобы избежать межсокетных задержек. Проверьте numactl --hardware.
• Регламентные задания: VACUUM, ANALYZE, резервное копирование – только в нерабочее время.
• Дисковая подсистема сервера приложений: Для сервера 1С достаточно любого SSD (SATA SSD) объёмом от 100 ГБ. Высокая нагрузка на диск на этом узле не является узким местом (основные операции ввода-вывода приходятся на СУБД). RAID 1 – для отказоустойчивости.
• Разделение серверов: При 30+ активных пользователях разделите сервер 1С и PostgreSQL. При 80+ рассмотрите кластер серверов 1С (2+ узла).
• Кластер PostgreSQL: Для высокой доступности – Patroni + etcd (минимум 3 узла для кворума).