Автоконфигурация через SpringBoot#
Для более удобной конфигурации плагинов реализована автоконфигурация на основе SpringBoot. Для работы в проект добавьте необходимые зависимости и измените конфигурационный файл проекта. Все параметры в конфигурационном файле совпадают с названием параметров настроек плагинов. Описание каждого параметра можно посмотреть в разделах описания плагинов.
Прикладная репликация#
Зависимость для автоконфигураций:
<dependency>
<groupId>sbp.integration.orm</groupId>
<artifactId>sbp-hibernate-standin-starter</artifactId>
<version>5.7.0</version>
</dependency>
Пример конфигурационного файла:
app:
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.
В случае использования Standin БД необходимо добавить Beans в java конфигурации с явным указанием имени и приоритета:
@Primary
@Bean("masterDataSource")
public DataSource masterDataSource() {
//код создания datasource
}
@Bean("standinDataSource")
public DataSource standinDataSource() {
//код создания datasource
}
Помимо этой секции в конфигурационном файле должны быть настройки клиентского модуля «Прикладной Журнал» (APLJ) продукта Platform V Backend (#BD). Описание настроек находится в документации Прикладного журнала (APLJ), раздел «Подключение и конфигурирование» .
Межкластерная индексация#
Зависимость для автоконфигураций:
<dependency>
<groupId>sbp.integration.orm</groupId>
<artifactId>sbp-hibernate-cci-starter</artifactId>
<version>5.7.0</version>
</dependency>
Пример конфигурационного файла:
app:
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.7.0</version>
</dependency>
Пример конфигурационного файла:
app:
sberflake:
implementation-mode: use_service
module-id: <идентификатор модуля>
url: <адрес сервера SberFlake>
Более подробное описание параметров находится в разделе Генерация идентификаторов.
Построение всех необходимых Bean находится в классе SberflakeStarter.
Инициализирующая выгрузка и технический контроль данных#
Зависимость для автоконфигураций:
<dependency>
<groupId>sbp.integration.orm</groupId>
<artifactId>datafabric-replication-starter</artifactId>
<version>5.7.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
Более подробное описание параметров находится в разделе Инициализирующая выгрузка и Технический контроль данных.
Отличия от ручной конфигурации:
Упрощена настройка индивидуального выбора стратегии. Параметры
partition-sizeиpartition-strategyзадают настройки стратегии по умолчанию, а секцияoverride-partition-strategyпереопределяет эти параметры для конкретных типов.Добавлен параметр
monitoring, для выбора механизма отправки метрик. Возможные параметры:noop — мониторинг не используется (по умолчанию);
micrometer — используется Micrometer;
custodian — используется Custodian.
Построение всех необходимых Bean находится в классе DatafabricStarter.
Помимо этой секции в конфигурационном файле должны быть настройки клиентского модуля продукта Platform V Archiving (ARC). Описание настроек находится в документации Platform V Archiving (ARC), раздел «SDK Архивирования (ARCH) и транспортная библиотека».