PostgreSQL и Linux при развертывании «1С:Предприятия»

С каждым годом всё больше компаний переходят на использование открытых технологий, особенно в сфере автоматизации бизнеса. Одним из наиболее популярных решений становится связка PostgreSQL (в качестве СУБД) и Linux (в качестве операционной системы сервера) при развертывании «1С:Предприятия». Это решение выгодно как с точки зрения стоимости, так и с точки зрения надёжности и масштабируемости. В последние годы ещё одним важным плюсом стало соответствие требованиям по использованию ПО из государственного реестра. Единственный минус — более высокие требования к квалификации специалистов по настройке и поддержке сервера СУБД.

Почему PostgreSQL

PostgreSQL — это мощная объектно-реляционная СУБД с открытым исходным кодом, которая хорошо подходит для задач «1С:Предприятия». Основные преимущества: — совместимость с 1С: с 2011 года PostgreSQL официально поддерживается как рекомендованная СУБД. Используются специальные сборки PostgreSQL от 1С или Postgres Professional; — производительность: высокая скорость обработки транзакций, конкурентный доступ благодаря MVCC, поддержка больших объёмов данных, гибкая настройка под различные сценарии использования; — расширяемость: поддержка расширений (pg_stat_statements, auto_explain), интеграция с внешними системами через FDW, REST и другие механизмы.

Почему Linux

Использование Linux в связке с PostgreSQL и 1С даёт следующие преимущества: — надёжность и стабильность: долговременная работа серверов, отказоустойчивость при грамотной настройке RAID, LVM, мониторинга; — безопасность: гибкая настройка прав, SELinux, встроенные механизмы контроля; — бесплатность: отсутствие необходимости в лицензиях, возможность использования отечественных дистрибутивов.

Требования

— PostgreSQL версии 9.6 или выше. Лучше использовать сборку от 1С или Postgres Professional. — Поддерживаемые ОС: CentOS, Red Hat, Ubuntu, Debian, РЕД ОС. — Минимальные системные требования: 8 ГБ ОЗУ, SSD-диски, многоядерный процессор.

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

Установка

Пример установки PostgreSQL на Ubuntu: autovacuum_vacuum_scale_factor. Регулярно выполнять VACUUM FULL, REINDEX.

Ошибка записи: «could not write to file», «no space left on device»:

— причина: переполнение диска;

— решение: удалить/архивировать старые WAL-файлы, расширить хранилище.

Общие рекомендации:

— использовать pg_stat_statements для анализа производительности;

— настроить мониторинг (Grafana, Zabbix);

— использовать пул соединений (pgbouncer);

— проводить регулярное обслуживание  (VACUUM, REINDEX);

— вести логирование длительных операций (log_min_duration_statement).

Что еще почитать 1. Официальный сайт PostgreSQL

2. Документация Postgres Professional

3. Документация по pg_stat_statements

4. Документация по auto_explain

5. Руководство по Grafana и Prometheus

6. Документация по Zabbix

PostgreSQL и Linux при развертывании «1С:Предприятия» | Сетка — социальная сеть от hh.ru