Исходный код вики Компоненты
Редактировал(а) Alexandr Fokin 2023/01/11 15:18
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | |(% style="width:180px" %)**Message**|(% style="width:1302px" %)Представляет из себя набор Key-Value значений. | ||
2 | Обычно может содержать уникальный идентификатор Id. | ||
3 | |(% style="width:180px" %)**Producer**|(% style="width:1302px" %)Клиент производитель сообщений | ||
4 | |(% style="width:180px" %)**Consumer**|(% style="width:1302px" %)Клиент потребитель сообщений | ||
5 | |(% style="width:180px" %) |(% style="width:1302px" %) | ||
6 | |(% style="width:180px" %)**Topic**|(% style="width:1302px" %)Содержит внутри себя одну и более __Partition__. Кол-во __Partition__ определяет максимальную степень [[параллелизма>>doc:Разработка.NET.C#.Многопоточность и асинхронность.Параллелизм.WebHome]] при потреблении сообщений. | ||
7 | При отправке сообщение в топик, для него выбирается один из __Partition__, в который и размещается сообщение. | ||
8 | После потребления сообщения оно не удаляется сразу и некоторое время продолжает храниться и доступно для чтения (Определяется конфигурацией). | ||
9 | |(% style="width:180px" %)**Partition**|(% style="width:1302px" %)Представляет из себя очередь, содержащую последовательность экземпляров сообщений, при этом у каждого сообщения есть свой уникальный числовой порядковый номер. | ||
10 | Для каждого читаемого __Partition__ у потребителя храниться значение __Offset__ - смещение, порядковый номер текущего сообщения. После прочтения __Offset__ увеличивается на 1. | ||
11 | |(% style="width:180px" %)**ConsumerGroup**|(% style="width:1302px" %)Consumers, находящиеся в разных __ConsumerGroup__, читают данные параллельно и независимо друг от друга (Получают одни и те же сообщения). | ||
12 | В рамках одной __ConsumerGroup __кол-во активных __Consumer__ не может быть больше чем кол-во __Partition__ в рамках одного __Topic__. | ||
13 | \\Каждому активному __Consumer__ назначается 1 и более __Partition__ для чтения данных. | ||
14 | Неактивные Consumer выполняет роль резервных и будут подключены автоматически, если один из активных Consumer выйдет из строя. (Или если количество Partition будет увеличено). | ||
15 | |(% style="width:180px" %)**Offset**|(% style="width:1302px" %)Смещение. | ||
16 | Содержит информации о текущей позиции читателя для каждой пары <TopicName>.<PartitionId>.<ConsumerGroupId> | ||
17 | |||
18 |