Дата последнего изменения: 29.05.2024
Поскольку модуль Информационные блоки считается очень "тяжелым" для создания легких справочников или хранения большого количества данных (когда модуль может вести себя не очень оптимально), то появилась потребность в создании аналога инфоблоков (
модуль Highload-блоки
Это отдельный модуль, перед началом работы его нужно установить на странице Настройки > Настройки продукта > Модули
), но гораздо проще и "полегче". Новый модуль доступен с версии 14.0 продукта и написан на новом ядре D7. Структура данных этого модуля предполагает возможность использования в нагруженных проектах.
Раньше данные хранились с использованием модуля, который закрывал таблицы - паттерн Table Module. В Highload-блоках дополнительно создан слой, который называется Table Data Gateway, который поддерживает всю технику работы с таблицами, а бизнес-логика находится в расширяющем классе.
Highload-блоки - это логика для работы с данными, не более. Для конкретного применения данных нужно предусмотреть реализацию бизнес-логики самим приложением. Чтобы реализовать эту бизнес-логику надо расширить класс Highloadblock.
Highloadblock - это прослойка между пользователем и ORM. ООП само по себе ведет к бо́льшему потреблению памяти и CPU, предлагая взамен более удобную и эффективную разработку. Highloadblock предназначены для высоких нагрузок. Их преимущества лежат в области архитектуры, то есть на них проще достичь масштабируемости, проще управлять разработкой, проще учитывать риски.
Выигрыш будет именно при работе с БД. Разработчик получает: