Size: a a a

Архитектура ИТ-решений

2020 November 25

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Нет, не по типам сообщений, а по изменяемым сущностям. По очереди на сущность - но с разными типами сообщений.
Спорно
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Спорно в чем?
Персистентные акторы - так и работают.
Cadence - так и работает.
Да даже какой-нибудь centrifugo примерно так и работает
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Подписываться как? Получается, клиенты должны подписываться на изменения всех сущностей?
источник

PD

Phil Delgyado in Архитектура ИТ-решений
В смысле "подписываться", это же не про pub-sub, а про queue
источник

VN

V N in Архитектура ИТ-решений
Phil Delgyado
Нет, не по типам сообщений, а по изменяемым сущностям. По очереди на сущность - но с разными типами сообщений.
Но если я правильно понял, то здесь же тоже есть потенциальная проблема, когда сущности взаимоизменяют состояния друг друга...
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Спорно в том, что явно не всем клиентам нужны все изменения (разные типы сообщений) сущности
источник

PD

Phil Delgyado in Архитектура ИТ-решений
V N
Но если я правильно понял, то здесь же тоже есть потенциальная проблема, когда сущности взаимоизменяют состояния друг друга...
Ну, они не изменяют, они отправляют события в чужую очередь (как в акторных моделях).
Хотя обычно хватает оркестрации, где один flow отправляет эти события всем, кому нужно.
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Ну, они не изменяют, они отправляют события в чужую очередь (как в акторных моделях).
Хотя обычно хватает оркестрации, где один flow отправляет эти события всем, кому нужно.
Ну не в очередь, а в инбокс. Это разные вещи
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Gennadiy Kruglov
Спорно в том, что явно не всем клиентам нужны все изменения (разные типы сообщений) сущности
А при чем тут "все клиенты", я нигде про это не говорил.
Я говорил про возможность иметь по очереди на сущность.
А уж как воркер будет выбирать события из всех этих очередей - отдельный вопрос.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Gennadiy Kruglov
Ну не в очередь, а в инбокс. Это разные вещи
Ээ, а что такое инбокс, как не queue?
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Ээ, а что такое инбокс, как не queue?
Да что угодно. Таблица в базе. Очередь - один из вариантов.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Обычная схема - это к воркеру привязывается несколько (много) очередей. И он умеет выбирать поступившие события из всех своих очередей, но при этом в обработке не более одного события на очередь.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Gennadiy Kruglov
Да что угодно. Таблица в базе. Очередь - один из вариантов.
Это упорядоченный список с доступом через FIFO. Т.е. очередь )
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Это упорядоченный список с доступом через FIFO. Т.е. очередь )
Ваще ты прав)
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Так у меня первое решение и сделано на таблицах в базе. Но оно медленное, выше 2K MPS на дешевом железе не прыгнуть и масштабируется фигово. На FDB можно сделать с горизонтальным масштабированием, но очень не хочется тратить время, а лучше бы взять готовое )
источник

N

Nikolay in Архитектура ИТ-решений
Таблица в базе - это все же не очередь.
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Так у меня первое решение и сделано на таблицах в базе. Но оно медленное, выше 2K MPS на дешевом железе не прыгнуть и масштабируется фигово. На FDB можно сделать с горизонтальным масштабированием, но очень не хочется тратить время, а лучше бы взять готовое )
Да это понятно. Я хотел подчеркнуть, что в реализации Inbox могут быть альтернативы)
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Nikolay
Таблица в базе - это все же не очередь.
Если к ней доступ только через FIFO (не важно, как реализован, есть много вариантов) - то очередь.
источник

GK

Gennadiy Kruglov in Архитектура ИТ-решений
Phil Delgyado
Если к ней доступ только через FIFO (не важно, как реализован, есть много вариантов) - то очередь.
+
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Gennadiy Kruglov
Да это понятно. Я хотел подчеркнуть, что в реализации Inbox могут быть альтернативы)
Угу, я это хорошо знаю. Вот и ищу альтернативу, которая была бы удобной.
Я то и на кафке понимаю как сделать, но это тоже слишком костыльно получается.
источник