Я работаю над микросервисным проектом. Этот проект включает в себя вычисление различных меток для данного набора данных и сохранение их в базе данных. Чтобы оптимизировать запросы к базе данных, я должен хранить метки в виде целых чисел и иметь логику преобразования, например карту в базе данных или перечисление. Возникшая проблема заключается в том, что перед сохранением меток в базе данных пользователь может добавить новые метки, которых не было в исходных моделях, и сохранить их в базе данных.
В настоящее время микросервисы, нуждающиеся в этой логике:
ms-entrypoint, микросервис, который взаимодействует с веб-интерфейсом через остальные API и веб-сокеты. Преобразование необходимо, потому что веб-интерфейс может отправлять новые метки или изменять обнаруженные, а также потому, что веб-интерфейсу нужны метки в удобочитаемом формате (а не целые числа).
мс-обнаружение, микросервис, который будет получать подтвержденные человеком метки и сохранять их в базе данных, а также предоставлять REST apis для выполнения запросов к данной базе данных. По этой причине он должен получать их в формате метки (от внешнего интерфейса, отправляющего запрос) и сохранять их в целочисленном формате. Затем сделайте обратное, когда база данных запрашивается.
Где и как мне разработать эту логику поиска? Наличие единой базы данных / коллекции, которая обслуживает этот компонент, кажется плохой практикой, которая нарушает базу данных для каждого шаблона микросервиса. Кроме того, перечисление в общей библиотеке невозможно, поскольку новые метки могут быть добавлены во время выполнения