Работа с современными конфигурациями 1С («Розница», «Бухгалтерия предприятия 3.0», «ЗУП 3.1») на устаревшем оборудовании — это ежедневный вызов для системного администратора. Ситуация, когда в распоряжении имеется лишь старый i3 2100 или AMD FX с 4–8 ГБ оперативной памяти, встречается повсеместно в малом бизнесе. Файловый режим в таких условиях начинает «захлебываться» из-за раздутых баз и блокировок. Рассмотрим подробнее, как перевести такие системы на клиент-серверный вариант (используя 1С:Сервер Мини) и правильно распределить скудные ресурсы памяти.
Когда база «Розницы» вырастает до 10 ГБ, файловая СУБД перестает справляться с многопользовательской нагрузкой. Основная проблема заключается не только в скорости чтения/записи, но и в механизме блокировок. При выполнении тяжелых операций (например, закрытие смены или проведение крупного поступления) база блокируется целиком, создавая очереди на кассах. Переход на MS SQL или PostgreSQL позволяет перейти на уровень блокировок отдельных записей, что критично для отзывчивости интерфейса. Однако серверные СУБД очень «прожорливы» до оперативной памяти, поэтому наша задача — установить жесткие рамки.
Разберем по шагам, какие лимиты следует выставить в настройках SQL-сервера и консоли администрирования 1С, чтобы оставить ресурсы для операционной системы и базовых программ (браузер, AnyDesk, офисные пакеты).
Сценарий 1: Критический минимум (4 ГБ ОЗУ)
Работать в клиент-серверном варианте на 4 ГБ крайне сложно, но возможно, если база небольшая. Основное правило: операционной системе Windows нужно оставить минимум 1.5 ГБ, иначе начнется «свопинг» (сброс данных на диск), который уничтожит всю производительность даже на SSD.
Max Server Memory до 1024 МБ.Сценарий 2: Оптимальный для малого бизнеса (8 ГБ ОЗУ)
Это наиболее распространенная ситуация. Здесь уже можно добиться комфортной работы 2–4 пользователей.
Сценарий 3: «Идеальный» для старого железа (16 ГБ ОЗУ)
Если удалось расширить память до 16 ГБ, система вздохнет свободно.
Проанализируем настройки СУБД. Кроме лимита памяти, важно изменить модель восстановления и количество потоков. Для баз малых предприятий, где критически важна скорость, а не поминутное восстановление, выберем Simple recovery model.
Посмотрим на пример настройки через SQL-запрос, если интерфейс Management Studio тормозит:
EXEC sys.sp_configure N'show advanced options', N'1'
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'max server memory (MB)', N'3000'
GO
RECONFIGURE WITH OVERRIDE
GO
Также рекомендуем установить Max Degree of Parallelism (MAXDOP). На старых процессорах с малым числом ядер (i3) лучше установить значение 1, чтобы один тяжелый запрос не парализовал работу всей системы.
Рассмотрим настройки в консоли администрирования 1С. Для слабых ПК важно контролировать не только объем памяти, но и количество процессов. При использовании Сервера Мини (до 5 подключений) нам достаточно одного процесса rphost.
Выясним причины медленной работы через настройки кластера:
Если ваша база превышает 10 ГБ (лимит MS SQL Express), стоит рассмотреть PostgreSQL. Он эффективнее работает с памятью на многоядерных процессорах типа AMD FX. Проанализируем ключевые параметры в файле postgresql.conf для 8 ГБ ОЗУ:
shared_buffers = 1024MB (рекомендуется около 25% от общей памяти).work_mem = 32MB (память для сортировок, не завышайте при малом ОЗУ).effective_cache_size = 4GB (подсказка планировщику о доступном кэше ОС).На производительность 1С на старом железе сильно влияет окружение ОС Windows. Пройдем по шагам обязательные настройки:
.mdf, .ldf), каталоги исполняемых файлов 1С и временные файлы пользователей.Разберем ситуацию, когда на одном ПК запущен и сервер, и клиент 1С. В этом случае работа через прямое подключение к серверу 1С создает лишнюю нагрузку. Часто публикация базы на IIS или Apache и работа через «Тонкий клиент» по протоколу HTTP оказывается более отзывчивой. Веб-сервер эффективнее управляет короткими сессиями, что визуально ускоряет открытие форм и справочников.
Даже идеально настроенный сервер на слабом железе со временем начнет тормозить. Разберем обязательный регламент:
Shrink для логов транзакций SQL, чтобы они не занимали место на SSD.%AppData%) при возникновении странных ошибок интерфейса.Соблюдение этих лимитов и настроек позволит эксплуатировать старое оборудование еще долгое время, обеспечивая приемлемую скорость обслуживания покупателей и проведения документов без капитальных вложений в апгрейд.