Size: a a a

2020 September 24

A

Andrii in symfony
В чем проблема с шарингом стейта?)
источник

D

Dmitry in symfony
Andrii
В чем проблема с шарингом стейта?)
у меня ? у меня никакой 🙂
источник

SP

Sergey Protko in symfony
Andrii
Так или иначе кто-то должен проверять, чтобы не было лишней работы и брать существующее. Если картинка залетает в сервис, то он должен ее процессить. Может быть еще другой сервис, который будет кешировать картинки и проверять есть ли они уже сохраненные
"лишняя работа" это делать проверки процессит ли твой воркер одно и то же сообщени лишний раз в пару недель.
источник

SP

Sergey Protko in symfony
Andrii
В чем проблема с шарингом стейта?)
проскроль выше узнаешь)
источник

SP

Sergey Protko in symfony
основная проблема - temporal coupling. если у тебя шаринг стэйта и request response ты не можешь ничего гарантировать вообще и как снежный ком начинают расти все эти isProcessed и прочие статусы
источник

k

knopkod4v in symfony
Andrii
В чем проблема с шарингом стейта?)
temporal coupling, необходимость синхронизации стейта, размазывание границ транзакций...
источник

SP

Sergey Protko in symfony
еще можно почитать старое доброе goto considered harmful где тоже объясняется почему человеки оч плохо в голове процессы разворачивающиеся во времени представляют. Там сложно. А где сложно там баги
источник

D

Dmitry in symfony
Sergey Protko
основная проблема - temporal coupling. если у тебя шаринг стэйта и request response ты не можешь ничего гарантировать вообще и как снежный ком начинают расти все эти isProcessed и прочие статусы
опять же смотря как юзать эти все флаги, если они используются для защиты от перегрузки сервисов или повтороного процессинга, то лично я не вижу в этом ничего плохого
источник

D

Dmitry in symfony
аналогично user->isMale - тоже шаринг стейта
источник

SP

Sergey Protko in symfony
конечно легко рассматривать кейс "вот у меня есть штука я у нее спрашиваю и делают дела". Другой вопрос что есть тысяча штук и все в этот момент чет делают и все чуть чуть во времени разнесено и хуй знает что в каком порядке будет происходить
источник

D

Dmitry in symfony
но попробуйте сделать ветвление для женщин и мужчин без такого флага
источник

k

knopkod4v in symfony
Dmitry
аналогично user->isMale - тоже шаринг стейта
вопрос в том, что ты будешь делать если юзер мейл или нет
источник

SP

Sergey Protko in symfony
Dmitry
аналогично user->isMale - тоже шаринг стейта
еще раз - если ты не представляешь как сделать без шаринга стэйта - это твоя проблема. Я тебе говорю можно, ты не веришь и пробовать не будешь) так что в целом можем остановить это бессмысленное обсуждение)
источник

k

knopkod4v in symfony
Dmitry
но попробуйте сделать ветвление для женщин и мужчин без такого флага
вопрос не в том, чтобы его не делать, вопрос в том где и зачем это делать
источник

SP

Sergey Protko in symfony
Sergey Protko
еще раз - если ты не представляешь как сделать без шаринга стэйта - это твоя проблема. Я тебе говорю можно, ты не веришь и пробовать не будешь) так что в целом можем остановить это бессмысленное обсуждение)
проблема даже не в шаринге стэйта а как это происходит. За счет "спрошу у юзера кто он" или "вот у меня последовательность событий на основе которой я принимаю решение что делать дальше".
источник

D

Dmitry in symfony
Sergey Protko
проблема даже не в шаринге стэйта а как это происходит. За счет "спрошу у юзера кто он" или "вот у меня последовательность событий на основе которой я принимаю решение что делать дальше".
это вопрос семантики
user->areYouMale == user->isMale для меня
источник

SP

Sergey Protko in symfony
есть скажем хороший пример - настройки. Это тоже "шаринг стэйта" в каком-то ключе. И тут много вариантов как это делать. И да там будут геттеры. Но сами настройки это тупой круд. Они влияют на вещи а не вещи влияют на них
источник

SP

Sergey Protko in symfony
Dmitry
это вопрос семантики
user->areYouMale == user->isMale для меня
это вопрос насколько тебе больно работать с системой.
источник

D

Dmitry in symfony
Sergey Protko
это вопрос насколько тебе больно работать с системой.
да вообще не больно, для меня семантика называний методов не имеет значения
источник

A

Andrii in symfony
Sergey Protko
проскроль выше узнаешь)
Проскролил) Тут либо философия и архитектура, либо практическая задача с сервисом картинок. Я сначала думал, что оно связано, но похоже, что нет)
источник