Хранилище сообщений

Сервис предназначен для регистрации и хранения сообщений Платформы с возможностью извлечения сообщений для повторной обработки в Платформе. В кластере может быть создан только один сервис с типом Хранилище сообщений.

Внимание

Особенности работы в версии 3.1.0

Основной способ хранения данных Хранилища сообщений - DatareonDB. Поддержка работы Хранилища сообщений с СУБД MSSQL и PosgreSQL сохраняется. Вкладка Параметры с полями настроек подключения к СУБД убрана со страницы Хранилища сообщений в ЦН, изменение настроек подключения к СУБД возможно в режиме редактирования конфигурации на странице Хранилища сообщений в ЦН. В версии 3.1.1 планируется прекращение поддержки работы Хранилища сообщений с СУБД. Для перехода к использованию версии 3.1.1 потребуется размещение данных хранилища в DatareonDB.

Внимание

Если Хранилище сообщений создано в версии 3.1.0, оно будет хранить данные в DatareonDB. Если Хранилище сообщений хранит данные в СУБД (например, если Хранилище сообщений создавалось в предыдущих версиях Платформы), после обновления Платформы на версию 3.1.0 возможно переключение на хранение данных в DatareonDB. Во время переключения перенос записей Хранилища сообщений возможен при помощи специальной утилиты-конвертера. Если не произвести перенос, при переходе на DatareonDB Платформа создаст пустую базу данных. Чтобы переключить Хранилище сообщений на использование DatareonDB, на странице Хранилища сообщений в ЦН в режиме редактирования конфигурации установите true в значении ключа internalStorage, сохраните изменения и примените конфигурацию. Архив с утилитой и руководством по использованию доступен на портале скачивания.

Внимание

Особенности работы в версии 3.1.0

Обязательным условием для Хранилища сообщений, работающего с DatareonDB в кластере, содержащем больше одного сервера, является привязка к одному из серверов кластера. В частности, при создании сервис Хранилища сообщений требуется привязать к одному из серверов.

Внимание

Особенности работы в версии 3.1.0

Хранилище сообщений, работающее с DatareonDB в кластере, содержащем больше одного сервера, при отказе сервера, к которому привязано Хранилище сообщений, необходимо привязать к рабочему серверу (предпочтительный вариант, так как привязка будет активирована при любом применении конфигурации), либо использовать кнопку Перенести на другой сервер на странице сервера в ЦМ.

Внимание

Особенности работы в версии 3.1.0

Содержимое Хранилища сообщений, работающего с DatareonDB в кластере, содержащем больше одного сервера, при запуске процесса Хранилища сообщений на одном сервере кластера и последующей привязке к другому серверу, не переносится автоматически. Возможно ручное перемещение файлов DatareonDB Хранилища сообщений на другой сервер. Для этого требуется остановить Хранилище сообщений, перенести каталог с данными, при необходимости настроить права на каталог и содержимое для пользователя, под которым запущена Платформа, и запустить Хранилище сообщений.

Пути к файлам DatareonDB Хранилища сообщений:

Windows:

путь_к_каталогу_с_данными_Платформы\Platform\Data\DatareonPlatformMessageStorage\идентификатор_Хранилища\DatareonStorage\MessageStorage

Linux:

путь_к_каталогу_с_данными_Платформы/platform/data/DatareonPlatformMessageStorage/идентификатор_Хранилища/DatareonStorage/MessageStorage

Для создания хранилища сообщений:

  1. В ЦН перейдите в раздел Сервисы.

  2. Нажмите на кнопку + над таблицей сервисов. В рабочей области страницы отобразится интерфейс создания / редактирования сервиса.

  3. На вкладке Основные заполните следующие поля:

    • Название: произвольное название сервиса, необязательно для заполнения.

    • Имя: уникальное имя сервиса, обязательно для заполнения.

    • Комментарий: описание сервиса, необязательно для заполнения.

  4. Для создания сервиса выберите вариант Хранилище сообщений в разделе Настройка сервисов.

  5. Для активации сервиса установите флажок Включен.

  6. После внесения данных нажмите на кнопку Сохранить.

  7. Нажмите на кнопку Применить конфигурацию:

    ../../_images/config_apply3.png

Если в кластер содержит больше одного сервера, дополнительно выполните следующие шаги:

  1. Скопируйте идентификатор сервиса из адресной строки:

    ../../_images/storage_setup1.png
  2. Перейдите на страницу сервера, к которому нужно привязать сервис.

  3. Перейдите в режим редактора конфигурации.

  4. В значении ключа modules добавьте в массив элемент-объект, в значении ключа entityId которого укажите идентификатор сервиса Хранилища сообщений.

    {
      "$type": "DT.ClusterConfiguration.Allocation.AllocationInfo, DT_Core",
      "entityId": "7dda7961-9825-448b-8c41-ac3526a490af",
      "reason": "FromConfig",
      "initialReason": "FromConfig"
    }
    
  5. После внесения данных нажмите на кнопку Сохранить.

  6. Нажмите на кнопку Применить конфигурацию:

    ../../_images/config_apply3.png

После сохранения изменений и применения конфигурации будет автоматически создана база данных.

Путь к каталогу с файлами DatareonDB Хранилища сообщений отображается на странице Хранилища сообщений в ЦМ. Для резервного копирования данных следует скопировать этот каталог:

../../_images/ms_storage_path.png

Работа с записями Хранилища сообщений

Работа с записями Хранилища сообщений возможна в ЦМ на вкладке Сообщения.

Описание работы с шагами процессов обработки Хранилища сообщений находится в разделе Работа с Хранилищем сообщений.

Примеры методов C# для работы с записями Хранилища сообщений доступны в разделе Функции Хранилища сообщений.