Разобрать конечную точку работоспособности пружинного привода на другое - это хорошо или плохо? - PullRequest
0 голосов
/ 04 февраля 2020

На основе 48.3 Настройка порта сервера управления

Предоставление конечных точек управления с использованием порта HTTP по умолчанию является разумным выбором для облачных развертываний. Однако если ваше приложение работает внутри вашего собственного центра обработки данных, вы можете предпочесть выставлять конечные точки, используя другой порт HTTP.

Какое значение имеет другой порт для запуска конечной точки работоспособности привода? по какому сценарию?

Как правило, достаточно ли одного порта для всех конечных точек службы? Является ли реализация конечной точки работоспособности установки в другой стандартной реализации?

Ответы [ 2 ]

1 голос
/ 05 февраля 2020

Могут быть разные причины, некоторые из которых являются техническими, а некоторые - нет:

  1. Ваш отдел безопасности придерживается политики, согласно которой никакие "административные" вещи (и привод, безусловно, попадают в эту категорию) не могут поделиться порт по умолчанию приложения. Так что вы просто живете с этим :) Я видел это в одной из довольно крупных компаний, так что это не шутка.

  2. Если вы интенсивно используете привод (например, выполняете интеграцию через исполнительный механизм) - будет запрос в том же пуле потоков соединителя tomcat, что и запросы обычного отдыха, которые должно обслуживать приложение, в этом случае вы можете предпочесть разделить.

  3. У вас есть Некоторое сетевое оборудование, которое направляет ваши запросы, может легко запретить запрос на некоторый порт от конечного пользователя, но не может работать с частями URL:

http://host:port/api/v1/business-stuff
http://host:port/health
 --> Hard / impossible to configure routing
as opposed to:
http://host:port1/api/v1/business-stuff
http://host:port2/health
 --> easy - open port1 for end users, don't open port2 to the out world

В конце концов Пружинные ботинки дают много вариантов, и вы должны решить, что подходит вам больше всего

1 голос
/ 04 февраля 2020

Почему вы, возможно, захотите выставить конечные точки привода на другом порту, связано с загрузочным балансировщиком / брандмауэром перед приложением.

Допустим, у вас есть API на порту 8080. Ваш брандмауэр использует порт 80 и направьте трафик c на порт 8080.

Почему мы не выставляем порт 80 непосредственно в нашем весеннем приложении? для linux открытие порта 1024 или ниже требует учетной записи root, потому что порты ниже являются чувствительными портами. Так что одна из причин в том, что вы не хотите запускать ваши приложения как root.

Но почему тогда приводы на другом порту, ну, если у вас включены приводы, скажем, 8081, то вы можете получить доступ только к ним из INSIDE ваша сеть за брандмауэром (поскольку у брандмауэра открыт только порт 80 для внешних подключений), и никто другой не может проверить вашу службу на предмет состояния работоспособности, памяти и т. д. c. и др c.

...