Стабилизация производительности при одновременном скачивании больших файлов

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

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

Включение механизма блочного чтения файлов

Для включения данного механизма необходимо выполнить следующее:

  1. Включить функциональность «UseContentStreamOnFileLoad».
  2. Изменить значение системной настройки «Размер читаемого блока файла».

Функциональность «UseContentStreamOnFileLoad»

Функциональность «UseContentStreamOnFileLoad» отключена по умолчанию. Чтобы ее активировать, выполните следующие действия:

  1. Перейдите в раздел «Функциональность» и активируйте функциональность «UseContentStreamOnFileLoad». Подробнее: Механизм управления функциональностью «Feature Toggle».
  2. Сохраните изменения.
  3. Очистите полностью кэш.

Системная настройка «Размер читаемого блока файла»

Для изменения системной настройки «Размер читаемого блока файла»:

  1. Откройте дизайнер системы и перейдите в раздел «Настройка системы» → «Системные настройки».
  2. Откройте системную настройку «Размер читаемого блока файла» (код «FileChunkBufferSize»).
  3. Укажите в поле «Значение по умолчанию» размер единичного блока загружаемого файла в байтах.
  4. Сохраните изменения.

Ограничения размера, задаваемые в системной настройке, настраиваются в файле SysSettings.config, расположенном в корневой директории приложения.

Минимальное значение для системной настройки «Размер читаемого блока файла»
<sysSetting key="FileChunkBufferSize" valueType="int" operation="min" value="10485760" />
Максимальное значение для системной настройки «Размер читаемого блока файла»
<sysSetting key="FileChunkBufferSize" valueType="int" operation="max" value="30485760" />

Чтобы настроить ограничения по минимальному и максимальному размеру, необходимо изменить значение атрибута value в соответствующей строке.

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

Рекомендуем изучить

Механизм управления функциональностью «Feature Toggle»
Интерфейсы для работы с файлами

Материал был полезен для вас?
Вебинар: 22 апреля в 11:00
Приглашаем вас на вебинар «BPMSoft – от выбора к реальным процессам», где покажем, как компании на практике сокращают time-to-market и масштабируют бизнес с помощью решений BPMSoft.
Регистрация на мероприятие
Готовы сделать выбор CRM?
Оставьте заявку, и наши эксперты бесплатно проконсультируют вас, подберут подходящую конфигурацию и рассчитают стоимость проекта.
Готовы сделать выбор CRM? (детальная)
Оставьте заявку, и наши эксперты бесплатно проконсультируют вас, подберут подходящую конфигурацию и рассчитают стоимость проекта.
Готовы сделать выбор CRM?
Оставьте заявку, и наши эксперты бесплатно проконсультируют вас, подберут подходящую конфигурацию и рассчитают стоимость проекта.
Готовы сделать выбор CRM? (детальная)
Оставьте заявку, и наши эксперты бесплатно проконсультируют вас, подберут подходящую конфигурацию и рассчитают стоимость проекта.
Оставить заявку
Оставьте свои контакты и наш менеджер свяжется с Вами в ближайшее время.
Демонстрационная версия BPMSoft
Заполните заявку для получения бесплатного доступа к демонстрационному стенду на 14 дней.
Типовое внедрение
Внедрите BPMSoft CRM в свою компанию всего за 8 рабочих дней по фиксированной цене! Заполните заявку для уточнения условий.
Заказать презентацию
Наш менеджер свяжется с Вами в ближайшее время.
Рассчитать стоимость
Задать вопрос
Карта сценариев использования ИИ для управления маркетингом, продажами и сервисом
Заполните форму и мы отправим исследование на E-mail
Присоединяйтесь к партнерской сети BPMSoft
Оставьте свои контакты и наш менеджер свяжется с Вами в ближайшее время
Тип партнерства*
Управление полным жизненным циклом клиента: от генерации лидов и продаж до внедрения, поддержки и продления подписки.
Разработка собственного Приложения – производного программного обеспечения, созданного на платформе BPMSoft (Базовое ПО).
Есть вопросы?
Не нашли для себя подходящую вакансию, или остались вопросы?
*
Есть вопросы?
Не нашли для себя подходящую вакансию, или остались вопросы?
*
Стать образовательным партнёром
Оставьте свои контакты и наш менеджер свяжется с Вами в ближайшее время.
Заявка на консультацию
Оставьте свои контакты и наш менеджер свяжется с Вами в ближайшее время.
Подписка
Спасибо!
Ваша заявка принята.
Наш сотрудник свяжется с вами в течение 1-2 рабочих дней.
Внимание!
Обнаружена ошибка.
Проверьте вашу почту
Для завершения подписки перейдите по ссылке в письме, которое мы только что отправили. Если письма нет во «Входящих», проверьте папку «Спам».
Telegram Подписаться
Уважаемые клиенты! Предупреждаем о случаях недобросовестной конкуренции и мошенничестве в сети Интернет.
Подробнее