Я получаю проблему, что etcd/consul/$все, что пытаются решить. Потребители услуг должны разговаривать с поставщиками услуг, чрезвычайно распределенная система с жидкостью нуждается в механизме для вступления в брак с двумя.
Однако проблема "где потребители услуг идут с их запросами"? является старым, и IMO была решена с помощью MOM - ориентированного на сообщения промежуточного программного обеспечения.
В MOM идея состоит в том, что потребителям услуг не важно, где живут поставщики услуг. Они просто отправляют сообщение и имеют шину обмена сообщениями, заботясь о маршрутизации сообщения соответствующему потребителю. Могут быть несколько провайдеров, которые все делают одно и то же (кругооборот на основе очереди) или поставщик версий (/v1/request переходит к одному,/v2/запрос переходит к другому).
Это простой и мощный шаблон интеграции, который полностью отделяет интерфейс службы от его реализации.
И все же я вижу эту странную одержимость открытием поставщиков услуг, которая, как представляется, создает плотную связь между потребителями и провайдерами (в дополнение к нескольким другим анти-шаблонам).
Итак, что мне здесь не хватает? ТИА.