Как скрыть несколько служб веб-сокетов за шлюзом API? - PullRequest
0 голосов
/ 11 декабря 2019

Я работаю над проектом, который имеет несколько микросервисов за шлюзом API, и некоторые из них предоставляют API WebSockets.

Веб-приложение должно иметь возможность взаимодействовать с этими API-интерфейсами.

Current architecture.

Эти API WebSocket могут быть построены с платформами, которые имеют свои собственные протоколы, используя socket.io или нет и т. Д.

Основная цель этого отражениядолжен иметь возможность масштабировать и сохранять гибкость в реализации моего API WebSockets.

Я подумал о двух решениях:

  • Первое - это просто прокси-запросы на шлюзе. Веб-приложение должно будет открыть веб-сокет для каждого микросервиса, для меня это выглядит как недостаток дизайна.

  • Другой способ - создать «Сервис уведомлений», который будет WebSocket. Сервер, который будет поддерживать исходящие соединения с пользователями и сможет связывать входящие и исходящие сообщения на основе специального протокола. Недостатком является то, что мне нужно реализовать систему паб / подсистема (или найти решение для). Я не много копался в этом, но это похоже на большую работу и самодельное решение, я не фанат этого.

Я не нашел статей, которыеоставьте отзыв после того, как вы познакомитесь с такой архитектурой и веб-сокетами в производстве, я надеялся найти их здесь.

...