Построение микросервисов - правильное распределение сервисов

У меня есть проект - вакансии. Есть набор скиллов ( sql,c# и т.д.) вокруг которого крутится проект. Я пишу на микросервисах и хочу их правильно разбить, но не знаю как, так как опыта мало. У меня есть вакансии, в которых есть подробная инфа, а так же набор необходимых скиллов. Так же у пользователя есть профиль, в котором есть резюме, где так же указаны этот набор скиллов. В будущем будет снова подвязка на этих скиллах, например, курсы и т.д. Я думал сделать сервис для скиллов - их CRUD. Сделать сервис вакансий - там юудет инфа о вакансии, а так же список id этих скиллов из другого бд. Для профиля отдельный сервис, где так же будет набор id скиллов.При удалении скилла, я буду использовать kafka, которая будет оповещать об этом. И например из вакансии этот скилл удалится. Правильно ли это вообще? И правильно ли хранить только id скилла. Ведь мне надо будет для каждого id обращаться в другой микросервис для получения информации. Или же лучше хранить id + title. Но тогда придется также отслеживать изменение информации в Скиллах и оповещать другие сервисы.


Ответы (0 шт):