Я ищу общее руководство по проектированию моей системы.
В настоящее время у меня есть две службы:
- Служба поставщиков, подключенная к базе данных Mongo, которая содержит определенные данные поставщиков и включающая их твиттеры
- Служба Twitter, для которой нетподключается к БД, но слушает живые твиттеры конкретных поставщиков.Как только появляется новый твит, служба Twitter обрабатывает твит и отправляет его обратно в службу поставщика для хранения через очередь сообщений.
Проблема: служба Twitter при запуске не знает, каких поставщиковслушать, потому что он не имеет доступа к базе данных поставщиков.
Мое решение: После запуска служба Twitter отправляет в службу поставщика сообщение с запросом списка всех идентификаторов поставщика в Twitter для прослушивания.После получения сообщения служба Vendor получает все идентификаторы Twitter поставщика из базы данных и отправляет список обратно в службу Twitter через очередь сообщений.Затем служба Twitter начинает прислушиваться к каналам этих поставщиков.
Мой вопрос в том, является ли мое решение правильным или просто для службы Twitter будет проще подключиться к базе данных mongo.Я думаю, что один плюс в моем решении состоит в том, что, если я хочу увеличить сервис Twitter, сервис Vendor может управлять тем, какие идентификаторы Vendor отправляются в сервис Twitter для прослушивания.Я просто не совсем уверен, что любое второе мнение будет оценено.