Автоконфигурация через SpringBoot#

Для более удобной конфигурации плагинов реализована автоконфигурация на основе SpringBoot. Для работы в проект добавьте необходимые зависимости и измените конфигурационный файл проекта. Все параметры в конфигурационном файле совпадают с названием параметров настроек плагинов. Описание каждого параметра можно посмотреть в разделах описания плагинов.

Прикладная репликация#

Зависимость для автоконфигураций:

<dependency>
    <groupId>sbp.integration.orm</groupId>
    <artifactId>sbp-hibernate-standin-starter</artifactId>
    <version>5.4.0</version>
</dependency>

Пример конфигурационного файла:

integration:
  standin:
    replication-strategy: partition_locks
    ordering-control-strategy: idempotent_ordering_control
    confirmation-mode: none
    partition-multiplying-mode: forbidden
    partition-lock-mode: none
    serializer-type: json_gson
    data-type: "ORM_CV"

Более подробное описание параметров находится в разделе Прикладная репликация.

Построение всех необходимых Bean находится в классе StandinPluginStarter.

Помимо этой секции в конфигурационном файле должны быть настройки клиентского модуля «Прикладной Журнал» (APLJ) продукта Platform V Backend (#BD).

Межкластерная индексация#

Зависимость для автоконфигураций:

<dependency>
    <groupId>sbp.integration.orm</groupId>
    <artifactId>sbp-hibernate-cci-starter</artifactId>
    <version>5.4.0</version>
</dependency>

Пример конфигурационного файла:

integration:
  cci:
    cluster-id: <название кластера>
    host: <адрес сервера CCI>
    port: 80
    implementation-mode: SERVICE_PROVIDED
    enableByDefault: true

Более подробное описание параметров находится в разделе Межкластерная индексация.

Построение всех необходимых Bean находится в классе CciStarter.

Генерация идентификаторов#

Зависимость для автоконфигураций:

<dependency>
    <groupId>sbp.integration.orm</groupId>
    <artifactId>sbp-hibernate-sberflake-starter</artifactId>
    <version>5.4.0</version>
</dependency>

Пример конфигурационного файла:

integration:
  sberflake:
    implementation-mode: use_service
    module-id: <идентификатор модуля>
    url: <адрес сервера SberFlake>

Более подробное описание параметров находится в разделе Генерация идентификаторов.

Построение всех необходимых Bean находится в классе SberflakeStarter.

Инициализирующая выгрузка и технический контроль данных#

Зависимость для автоконфигураций:

<dependency>
    <groupId>sbp.integration.orm</groupId>
    <artifactId>datafabric-replication-starter</artifactId>
    <version>5.4.0</version>
</dependency>

Пример конфигурационного файла:

app:
  datafabric:
    monitoring: "micrometer"
    partition-size: 30
    partition-strategy: COMPOSITE_OR_SIMPLE_ID_AUTOSELECT
    attempt-count: 3
    attempt-delay: 1000

    override-partition-strategy:
      - dataTypes:
          - 'com.example.demo.entity.Client'
          - 'com.example.demo.entity.Product'
        strategyType: SIMPLE_ID
        size: 10
      - dataTypes: 'com.example.demo.entity.Attribute'
        strategyType: HASHCODE
        size: 5

Более подробное описание параметров находится в разделе Инициализирующая выгрузка и Технический контроль данных.

Отличия от ручной конфигурации:

  1. Упрощена настройка индивидуального выбора стратегии. Параметры partition-size и partition-strategy задают настройки стратегии по умолчанию, а секция override-partition-strategy переопределяет эти параметры для конкретных типов.

  2. Добавлен параметр monitoring, для выбора механизма отправки метрик. Возможные параметры:

    • noop — мониторинг не используется (по умолчанию);

    • micrometer — используется Micrometer;

    • custodian — используется Custodian.

Построение всех необходимых Bean находится в классе DatafabricStarter.

Помимо этой секции в конфигурационном файле должны быть настройки клиентского модуля продукта [ARC] Platform V Archiving.