Nikolay
Чтобы как бы он был изначально там
Vasily
Мда, херня полная
Ayrat
Я думаю тебе стоит вообще про евентсорсинг почитать
Ayrat
Или посмотреть доклады какие
Nikolay
Vasily
Это даже не на коленке
Vasily
А непонятно на чем
Nikolay
Ну суть в том, что до нас это пытались сделать много крупных компаний, ни у кого не получилось 🤷♂️
Nikolay
А тут хоть на коленке, зато работает
Vasily
Неверный подход к данным
Nikolay
Vasily
Точнее, к представлению доменной области
Nikolay
Как бы изначально требовалось одно, сейчас совсем другое
Nikolay
Даже ТЗ было
Nikolay
Если уж совсем упростить, то сначала делали велосипед, а теперь в итоге получилась машина
Nikolay
Без преувеличения
Vasily
Так бывает
Nikolay
Изначально у нас даже логирования не было, накручивали потом
Nikolay
А снэпшоты в базе хранятся? 🤔
Vladyslav
а что по скоростям?
Ayrat
а что по скоростям?
Снепшоты как настроишь. Например каждую тысячу евентов или раз в час. Евенты в аппенд онли кафку или любую другую подобную бд ужасающе быстры. Евент стрим или снапшот читается только после на старте сервиса.
Ayrat
А снэпшоты в базе хранятся? 🤔
можно локальное хранилище дял каждой настроить, можно централизованное, это не так важно. Зависит от требований.
Но опять таки. Если у тебя тяжёлые запросы на чтение сложных агрегатов, нет ничего проще сделать сервис который этот агрегат будет держать в памяти и отдавать его со скоростью света (по сути только нетворк латенси)
Ayrat
снапшоты сохраняются асинхронно, на них насрать. евенты синхронно, тут важна скорость записи в бд
Vladyslav
что-то звучит очень круто
Vladyslav
где подвох
Ayrat
Подвох что это по-другому, нужны другие тулы
Ayrat
дебажить крайне сложно
Ayrat
если с централизованной бд можно профайлером ВСЁ увидеть
Ayrat
то тут отследить влияние клика кнопкой в UI на состояние 10 связанных микросервисов - мягко говоря нетривиально
Ayrat
ну и нужно мониторинг настраивать вообще по-другому, т.к. важно знать кто где ботлнечит, кто где живой и т.д.
Ayrat
с бд там понятно всё
Ayrat
короче проблемы одни решаются, другие добавляются
Nikolay
Ну этот подход сильно сложнее
Nikolay
Нужна хорошая команда и хорошая документация
Ayrat
Нужна хорошая команда и хорошая документация
нууу... да, наверное. мы как-то вчетвером подняли такое, один архитектор, 1 dbd, два сишарписта (один из них я был). Доков много писали, да, но в основном это были схемы в lucidchart
Ayrat
а не слова
Nikolay
А я один написал эту дичь :D
Nikolay
Где-то 90%
x
Нужна хорошая команда и хорошая документация
вот у нас сейчас сверху спущена директива, от неебических архитекторов, "фсё переделать чтоб микросервисы", при этом никаких гайдлайнов, и я с ужасом понимаю что ничего из этого не выйдет ) точнее выйдет, но пародия ) но что-то пилим
Nikolay
Ayrat
Ayrat
он должен скелет напилить, чтобы потом рабы с вёслами мясо навешивали
Nikolay
Nikolay
Заходишь на хабр, почитал статейки
Nikolay
И такой: "Пилите на микросервисах"
Nikolay
В докере
Nikolay
И ещё Kubernetes
x
Анна
Bonart
Nikolay
Vasily
Nikolay
Ayrat
Nikolay
Bonart
Пока еще официального анонса не было :)
Bonart
Опять в райфе, да
Vasily
Это Бугаенко?
Bonart
Я неправ. Анонс был, митап 4 сентября
Bonart
https://mskdotnet.timepad.ru/event/795174/
Nikolay
Ayrat а как быть с поисковым движком в данном случае? Нужно все данные ивентов писать в базу?
Ayrat
Ayrat
:D
Ayrat
как бы можно пользоваться другими технологиями
Ayrat
ну и пиши туда что нужно, да
Nikolay
А если опять же изменение структуры произошло? Нужно дропать данные поисковика и по новой прогнать?
Ayrat
я думаю это от движка зависит
Ayrat
т.е. как ты с этим справляешься сейчас?
Nikolay
Тупо переиндексацию делаю
Nikolay
Но базе от этого неприятно
Ayrat
по какому условию?
Nikolay
Если меняю схему данных
Ayrat
ты это делаешь руками?