Size: a a a

Software Design/Architecture/Zen

2020 October 04

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Валентин Удальцов
хороший вопрос))) потому что у меня такая абстракция)) в рамках которой мне проще взять uuid v5 вместо surveyId.respondentId
Тогда оба варианта норм. Единственное, в случае отдельной таблицы соответсвий streamId, ...otherIds менкджерить все дело легче, чем с uuidv5
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
В php-service-bus в примере именно отдельная таблица стримид и кому он пренадлежит
источник

M

Maxim Kainov in Software Design/Architecture/Zen
Валентин Удальцов
хороший вопрос))) потому что у меня такая абстракция)) в рамках которой мне проще взять uuid v5 вместо surveyId.respondentId
Можно же и уиды и айдишники одновременно использовать )
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
всем спасибо за размышления)
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
Dmitriy Tkachenko
В php-service-bus в примере именно отдельная таблица стримид и кому он пренадлежит
а можешь ссылку кинуть, про какое место php-service-bus ты?
источник

k

knopkod4v in Software Design/Architecture/Zen
Валентин Удальцов
смотри, есть два варианта. либо у меня во всех командах свойства surveyId, respondentId и тогда мне надо найти агрегат-рут по этим двум полям. но поскольку он ES, я не могу сделать запрос where surveyId = B, respondentId = A.

либо я делаю заранее команду "создай прохождение опроса" id = X, surveyId = B, respondentId = A, и потом в командах использую id = X. но тогда я не могу быть уверен, что для B, A существует только один такой агрегат-рут.

важный момент, что уже во время прохождения опроса я не могу сначала создать id, потом его где-то запомнить и начать передавать, так как на прохождение выдаётся ссылка с зашитым jwt и пользователь может несколько раз по ней переходить с разных устройств.
а в jwt положить id прохождения нельзя?
источник

k

knopkod4v in Software Design/Architecture/Zen
ну или просто в ссылку
источник

DT

Dmitriy Tkachenko in Software Design/Architecture/Zen
Валентин Удальцов
а можешь ссылку кинуть, про какое место php-service-bus ты?
Да там обычная таблица соответствия стримид и айдишников других участников системы. Щас не за компом прост
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
knopkod4v
а в jwt положить id прохождения нельзя?
Можно, просто это не решает проблему неединственности. То есть мне нужна гарантия, что кол-во прохождений для любой пары будет <= 1. Ну короче вариант uuid5 самый простой, вариант с таблицей более удобный в долгосрочной перспективе.
источник

k

knopkod4v in Software Design/Architecture/Zen
Валентин Удальцов
Можно, просто это не решает проблему неединственности. То есть мне нужна гарантия, что кол-во прохождений для любой пары будет <= 1. Ну короче вариант uuid5 самый простой, вариант с таблицей более удобный в долгосрочной перспективе.
почему не решает? При проходе по ссылке прохождение уже будет. Неважно сколько переходов по ссылке будет - прохождение будет 1
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
knopkod4v
почему не решает? При проходе по ссылке прохождение уже будет. Неважно сколько переходов по ссылке будет - прохождение будет 1
Ссылки генерируются в разных местах при рассылках разными способами и мне глобально надо, чтобы так или иначе респондент оказывался в том же прохождении. То есть я могу, конечно, спрашивать каждый раз, нет ли у вас там такого id для такой пары. Но это будет дорого
источник

k

knopkod4v in Software Design/Architecture/Zen
Валентин Удальцов
Ссылки генерируются в разных местах при рассылках разными способами и мне глобально надо, чтобы так или иначе респондент оказывался в том же прохождении. То есть я могу, конечно, спрашивать каждый раз, нет ли у вас там такого id для такой пары. Но это будет дорого
дорого по каким ресурсам?
источник

SP

Sergey Protko in Software Design/Architecture/Zen
knopkod4v
дорого по каким ресурсам?
Надо в базу лазить
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
Sergey Protko
Надо в базу лазить
Да, и плюс это даже другой контекст, не хочется их зря пересекать. Респондент вообще может туда, кстати, не дойти, поэтому ещё плюс не хочется заблаговременно там что-то создавать.
источник

k

knopkod4v in Software Design/Architecture/Zen
Валентин Удальцов
Ссылки генерируются в разных местах при рассылках разными способами и мне глобально надо, чтобы так или иначе респондент оказывался в том же прохождении. То есть я могу, конечно, спрашивать каждый раз, нет ли у вас там такого id для такой пары. Но это будет дорого
есть ещё вариант хранить идентификаторы опросов, на которые уже создано прохождение в респонденте и тогда если этот объект будет контролировать создание прохождения - всё должно быть ок 🤔
источник

k

knopkod4v in Software Design/Architecture/Zen
knopkod4v
есть ещё вариант хранить идентификаторы опросов, на которые уже создано прохождение в респонденте и тогда если этот объект будет контролировать создание прохождения - всё должно быть ок 🤔
это как раз про "do not create aggregate roots", как я понимаю
источник

k

knopkod4v in Software Design/Architecture/Zen
Валентин Удальцов
Да, и плюс это даже другой контекст, не хочется их зря пересекать. Респондент вообще может туда, кстати, не дойти, поэтому ещё плюс не хочется заблаговременно там что-то создавать.
респондент и опрос? Я конечно не знаю что у тебя там, но на первый взгляд это один контекст. Для чего ещё нужен респондент, кроме как для прохождения опроса? Не логиниться же и кофе варить.
Может и не дойти, что тебе с этого? Ну подчистишь если что. И потом - разве бизнесу не интересно кто дошёл, а кто нет?
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
knopkod4v
респондент и опрос? Я конечно не знаю что у тебя там, но на первый взгляд это один контекст. Для чего ещё нужен респондент, кроме как для прохождения опроса? Не логиниться же и кофе варить.
Может и не дойти, что тебе с этого? Ну подчистишь если что. И потом - разве бизнесу не интересно кто дошёл, а кто нет?
Нет, рассылка и опрос
источник

m

militska in Software Design/Architecture/Zen
а посмотреть все пройденные  опросы?
источник
2020 October 05

D

Dos in Software Design/Architecture/Zen
Всем привет. Скажите, пожалуйста, если ли какие-то шаблоны для документации проекта в confluence. Я имею в виду структуру, что документировать, как и так далее. Если поделитесь полезными ссылками буду непременно благодарен!
источник