Size: a a a

Node.js — русскоговорящее сообщество

2020 September 26

D

Dmitry in Node.js — русскоговорящее сообщество
Artem Zuev
Угу, монолит по базе, разбитый на раздельные процессы для удобства кодинга...
Т.е модульный монолит. И два модуля работают с одними и теми же данными ?
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Или просто база одна физическая а Таблицы используются свои в каждом модуле?
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Dmitry
Т.е модульный монолит. И два модуля работают с одними и теми же данными ?
Можно и так сказать. Один сервис читает данные другого - это в порядке вещей. Но вот crud-ы не хочется делать так, чтобы один лез в другой.
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Понятно. И эту архитектуру вы не намерены исправлять ? Правильно понимаю ?
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Хотелось бы сделать именно так, чтобы один сервис начинал транзу, менял данные в ее рамках, передавал ее в другой сервис, тот вносил правки в своих данных и коммитил всю пачку как атомарную операцию.
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Вы хотите плохую архитектуру сделать ещё хуже. Ваше право
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Dmitry
Понятно. И эту архитектуру вы не намерены исправлять ? Правильно понимаю ?
Не травите душу... Между "не хочу" и "не могу" - непреодолимая пропасть (((
источник

D

Dmitry in Node.js — русскоговорящее сообщество
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Вот рекомендую. Там как раз описаны паттерны которые вам необходимы
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Не нужно ломиться в микросервисы но книга поможет понять что у вас не так и что переделать
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Dmitry
Вы хотите плохую архитектуру сделать ещё хуже. Ваше право
И не стоит судить о людях так категорично. Я хочу и технически могу переделать все на "правильные" микросервисы... Но никто не даст мне это сделать с работающим и активно продающимся продуктом...
И все, что мне сейчас остается, найти пути решения самых проблемных мест, причем с минимальным вмешательством в код существующих сервисов.
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Artem Zuev
И не стоит судить о людях так категорично. Я хочу и технически могу переделать все на "правильные" микросервисы... Но никто не даст мне это сделать с работающим и активно продающимся продуктом...
И все, что мне сейчас остается, найти пути решения самых проблемных мест, причем с минимальным вмешательством в код существующих сервисов.
Прыгать на мироксервисы это последнее дело. У вас проблема с изоляцией данных в целом даже в монолите
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Отсюда и проблема ваша
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Вот сейчас проблема с сохранением консистентности данных. И то, что код одного сервиса вынужден менять данные другого, а не передать ему директиву для этого, нифига не хорошо
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Так может стоит попробовать начать с изоляции данных ? Глядишь и не надо костыль будет делать
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Что вы сейчас подразумеваете под изоляцией данных? Перестроить таблицы и связи - и соответственно перелопапить и код, работающий с ними...
Да меня застрелят на месте только за такое предложение )))
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Если вы всегда можете решать как и чему быть, рад за вас... Но это не значит, что у всех так )
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Artem Zuev
Что вы сейчас подразумеваете под изоляцией данных? Перестроить таблицы и связи - и соответственно перелопапить и код, работающий с ними...
Да меня застрелят на месте только за такое предложение )))
Сочувствую.
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Я бы на вашем месте смотрел бы в сторону саги на оркестрации с компенсационными транзакциями.
источник

AZ

Artem Zuev in Node.js — русскоговорящее сообщество
Это из области - есть дом, построен в принципе добротно и на века и можно жить, но как-то так сложилось, что намешана куча стилей и подходов ))) и вот подтекает в одном углу при ливне и надо что-то придумать... Но никто не даст дом перестроить...
источник