Маленького домен презентацияMicroservices регистрация реестра службы и открытие
Я м на самом деле имею два microservices:
- пользователя - управление CRUD на пользователях
- Биллингс - управление CRUD на выставленных счетах, с " ссылка "на пользователя, связанного с выставлением счета
anation
Мне нужно, когда биллинг вызывается в HTTP-запросе, чтобы отправить полностью объект биллинга с загруженным пользователем. В этом случае, и в этом конкретном случае, я действительно нуждаюсь в этом.
В первый раз, я посмотрел вокруг, и кажется, что это была хорошая идея использовать очереди сообщений, для асинхронности, и поэтому служба биллинга может отправить по очереди:
«, кто является пользователь с id 123456? Мне нужно его загрузить »
Так что мои две службы могли обмениваться, не зная друг друга или не зная« места »друг друга.
Проблемы
Мой первый вопрос, какова цель использования реестра службы в этом случае? Очередь сообщений может предоставить нам информацию, не зная ничего о местоположении пользовательского сервиса, нет?
Когда нам нужно использовать регистрацию услуг: В случае шаблона агрегатора с API RESTFul мы можем перемещаться по ссылкам через ссылки. Может быть, в случае прокси-шаблона? Когда микросервисы взаимодействуют с другой службой?
Признав теперь, что мы используем прокси-шаблон с «фронтальным сервисом». В этом случае для меня нормально использовать регистрацию услуг. Но это означает, что служба отправки на передний план знает имя службы userService и биллинговой службы при регистрации сервиса? Пример:
Регистры служба пользователя как "UserServiceOfHell: http://80.80.80.80/v1/" на Zookeeper
Service регистрирует Платежная как "BillingService: http://90.90.90.90/v4.3/"
Передний конец службы необходимо отправить некоторые запросы к пользователю и услуге биллинга, это означает, что он должен знать, что пользовательская служба - это «UserServiceOfHell». Это определено в начале проекта?
- Последний вопрос: можем ли мы использовать несколько шаблонов микросервисов в одной архитектуре микросервисов или это плохая практика?
NB: Все, что я спрашиваю основано на http://blog.arungupta.me/microservice-design-patterns/