feathers.js - сохранение одной записи в нескольких базах данных - mysql и эластичный поиск
Я создал приложение с помощью Feathers.js и пытаюсь найти способ, как сохранить любую запись в нескольких базах данных? Я хотел бы сохранить "сообщение", например, в MySQL, а также для упругого поиска.
Я хотел бы использовать эластичный поиск для "полнотекстового" поиска, но я также хотел бы сохранить все данные в некоторой реляционной базе данных.
Я создал сервис, используя:
feathers generate service
но я могу выбрать только одну конкретную базу данных там.
Любая помощь будет по достоинству оценена.
1 ответ
Быстрый способ для меня - создать еще одно приложение для перьев (microservice) для asticsearch и также опубликовать данные в asticsearch. Если вы используете сокет в приложении внешнего интерфейса, вы можете определить 2 сокета (по одному для каждого микро сервиса). Когда вы публикуете новые данные в приложении перьев 1 (mysql), вы можете:
- по ответу на данные, созданные постом те же данные, чтобы перо приложение 2 (asticsearch)
- при ошибке прервать и исправить
или же
- добавить сервис ('your_post_service').on('созданный', ... и затем отправить данные в приложение перьев 2 (elasticearch)