Как ускорить 1С:ERP с серверной базой?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как ускорить 1С:ERP с серверной базой?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #36458
      Фото аватараOdineski
      Участник

        Каким образом ускорить быстродействие ERP в случае серверной базы

      • #36459
        bot_avaOdin — Одинэсник
        Участник

          Чтобы ускорить быстродействие 1С:ERP при работе с серверной базой (обычно MS SQL Server), нужно комплексно подойти к оптимизации. Вот конкретные рекомендации:

          1. Оптимизация сервера баз данных (MS SQL Server):
          — Включить уровни изоляции транзакций:
          |ALTER DATABASE [ИмяБазы]
          |SET ALLOW_SNAPSHOT_ISOLATION ON;
          |ALTER DATABASE [ИмяБазы]
          |SET READ_COMMITTED_SNAPSHOT ON;
          Это уменьшит блокировки при чтении.
          — Настроить параметры блокировок:
          — Установить параметр locks в SQL Server в ненулевое значение (например, 1000000), чтобы уменьшить эскалацию блокировок.
          — Включить трассировку 1224: DBCC TRACEON(1224, -1) — отключит укрупнение блокировок на основе количества.
          — Регулярно выполнять регламентные операции:
          — Обновление статистики индексов.
          — Перестроение или реорганизация индексов.
          — Следить за фрагментацией индексов и устранять её.
          — Разделить файлы базы данных и журнал транзакций на разные физические диски или массивы.

          2. Аппаратное обеспечение сервера:
          — Использовать быстрые SSD-диски для базы данных и журналов транзакций.
          — Минимум RAID 10 для дисков с базой данных.
          — Большой объем оперативной памяти (от 128 Гб и выше), чтобы база могла кэшироваться.
          — Мощный процессор с высокой тактовой частотой (лучше меньше ядер, но выше частота).
          — Настроить BIOS и ОС на максимальную производительность (отключить энергосбережение, включить Turbo Boost, выставить минимальное состояние процессора 100%).

          3. Оптимизация сервера приложений 1С:
          — Увеличить количество рабочих процессов 1С, но не слишком много, чтобы не было избыточных переключений контекста.
          — Настроить кэширование на сервере 1С.
          — Разделить роли по серверам (например, сервер приложений и сервер базы данных на разных машинах).
          — Использовать кластеризацию (если редакция КОРП) для распределения нагрузки.

          4. Оптимизация конфигурации 1С:ERP:
          — Свертка и архивирование данных: переносить старые данные в архивные регистры или отдельные базы, чтобы уменьшить объем оперативной базы.
          — Оптимизировать запросы и отчеты, избегать больших выборок без индексов.
          — Разбивать большие транзакции на части (не более 10000 записей за одну транзакцию), чтобы избежать эскалации блокировок.
          — Отключить ненужные функциональные опции и минимизировать количество открываемых форм и списков.

          5. Сетевые настройки:
          — Использовать гигабитные или быстрее сети.
          — Отключить IPv6, если не используется.
          — Добавить 1С и SQL Server в исключения брандмауэра и антивируса.

          6. Мониторинг и анализ:
          — Использовать встроенные средства 1С для анализа производительности (подсистема мониторинга).
          — Анализировать блокировки, ожидания и длительные запросы в SQL Server.
          — Проводить нагрузочное тестирование и профилирование.

          Рекомендую посмотреть здесь для подробностей и примеров:
          https://infostart.ru/1c/articles/855182/
          https://infostart.ru/1c/articles/720010/
          https://infostart.ru/1c/articles/964062/

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С