Size: a a a

2020 June 24

AH

Ayrat Hudaygulov in F# Chat
и всё - вилы
источник

ДБ

Дмитрий Башинский... in F# Chat
Ayrat Hudaygulov
у тебя нарушена последовательность. Ты в начале должен заперсистить евент в сторадж, а после этого раскатывать его по консумерам
так я ж через очередь это делаю
источник

AH

Ayrat Hudaygulov in F# Chat
S.Mahdi | Unknown Planets
Hi,
what is the difference between these two
let func1 (p1:string) (p2:string) = ...
and
let func2 (p1:string, p2:string) = ...
first one is curried function which you could partially apply
источник

VS

Vasily Shapenko in F# Chat
Second one has one argument
источник

ДБ

Дмитрий Башинский... in F# Chat
он в том же порядке даст хендлеру на сохранение
источник

VS

Vasily Shapenko in F# Chat
In form of tuple
источник

AH

Ayrat Hudaygulov in F# Chat
S.Mahdi | Unknown Planets
Hi,
what is the difference between these two
let func1 (p1:string) (p2:string) = ...
and
let func2 (p1:string, p2:string) = ...
for example

let curried = func1 “arg1”

you can’t do it with tupled form, where you have to pass all arguments at once
источник

AH

Ayrat Hudaygulov in F# Chat
Дмитрий Башинский
так я ж через очередь это делаю
очередь это не сторадж
источник

ДБ

Дмитрий Башинский... in F# Chat
ну мне кажется что тогда в коде у меня не будет старых событий, и старых хендлеров, я все обрабатываю сейчас, просто я себе сделал историчность, но и тот же read store шустрый

К примеру мне нужно наполнить новыми данными, получить которые можно перечитав события, я пишу "миграционный скрипт" который прочитает нужные событие наполнит read store новыми данными, и код API уже работает с ними
источник

S

S.Mahdi | Unknown Pl... in F# Chat
Vasily Shapenko
Second one has one argument
🙏
источник

S

S.Mahdi | Unknown Pl... in F# Chat
Ayrat Hudaygulov
for example

let curried = func1 “arg1”

you can’t do it with tupled form, where you have to pass all arguments at once
🙏
источник

ДБ

Дмитрий Башинский... in F# Chat
даже если сохранить самому, а потом кинуть в очередь, в остальном, норм?
источник

ДБ

Дмитрий Башинский... in F# Chat
как мне кажется получится ES без версионирования событий
источник

AH

Ayrat Hudaygulov in F# Chat
Дмитрий Башинский
ну мне кажется что тогда в коде у меня не будет старых событий, и старых хендлеров, я все обрабатываю сейчас, просто я себе сделал историчность, но и тот же read store шустрый

К примеру мне нужно наполнить новыми данными, получить которые можно перечитав события, я пишу "миграционный скрипт" который прочитает нужные событие наполнит read store новыми данными, и код API уже работает с ними
я нихуя не понял!

вот так делают
1. читают апстрим (евенты других сервисов) из очередей (очереди != евентстор)
2. реагируют на евенты, если нужно поменять свой стейт, сохраняют евент в свой локальный евентстор
3. сохранённые евенты паблишатся в даунстрим очереди тем кому интересно
источник

AH

Ayrat Hudaygulov in F# Chat
очередь не имеет всей истории событий, это просто - текущий флоу. Поэтому она НЕ сторадж
источник

VS

Vladimir Shchur in F# Chat
Ayrat Hudaygulov
я нихуя не понял!

вот так делают
1. читают апстрим (евенты других сервисов) из очередей (очереди != евентстор)
2. реагируют на евенты, если нужно поменять свой стейт, сохраняют евент в свой локальный евентстор
3. сохранённые евенты паблишатся в даунстрим очереди тем кому интересно
тут вопрос в том чтобы поднять свой стейт, ок ли его держать отдельно, не вычитывать каждый раз все евенты
источник

AH

Ayrat Hudaygulov in F# Chat
Vladimir Shchur
тут вопрос в том чтобы поднять свой стейт, ок ли его держать отдельно, не вычитывать каждый раз все евенты
ну сервис на старте читает свой локальный евентстор, собирает стейт и держит в памяти. As usual
источник

AH

Ayrat Hudaygulov in F# Chat
если надо помутировать себя, сохранят в евент стор - мутирует себя евентом (именно в такой последовательности)
источник

AH

Ayrat Hudaygulov in F# Chat
и далее паблишит этот евент
источник

AH

Ayrat Hudaygulov in F# Chat
принимаем на грудь следующий
источник