Skip to content

R-Vision/ppm-events

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Работа с событиями в контрактах платформы

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

ppm install https://github.com/R-Vision/[email protected]

Далее в файле контракта в котором содержаться типы событий, необходимо импортировать зависимость:

import "event/v1/options.proto";

И у типа события определить принадлежность к сущности с которым связано текущее событие:

message SomeEvent {
  option (event.v1.metadata) = {
    // Наименование группы событий
    // Необходимо для того чтобы складывать разные типы событий в один топик
    group: "event_group_name"

    // Наименование поля из которого необходимо брать значение для вычисления партиции
    // Обычно это поле в котором содержится идентификатор сущности
    // partition_key_field : "id"
  };

  // ... далее уже описываем поля, которые должно содержать событие
}

Данная привязка (события к сущности) позволяет платформе распределять события по определенным топикам в Kafka. Допустим что у какой-нибудь сущности есть события Create, Update и Delete. Благодаря этой привязке все они попадут в один топик тем самым сохранится порядок их происхождения.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published