Как поддерживать http-сессии в API, развернутом в Kubernetes?

ibrar arshad спросил: 03 ноября 2018 в 09:05 в: rest

Я разрабатываю API, который будет принимать запросы от клиентов и взаимодействовать с облачным бэкэндом, таким как AWS, от имени клиента. Этот API должен быть масштабируемым, поэтому некоторые исследования привели меня к мысли, что я могу поместить API в контейнеры и позволить масштабировать его через Kubernetes. Я планирую использовать Flask для написания этого API. У меня есть три вопроса на этот счет:

  1. Подходит ли для этого колба? Похоже, благодаря моим исследованиям.
  2. Как API должен обрабатывать аутентификацию пользователя в бэкэнде? Должен ли он просто взять имя пользователя / пароль от пользователя, установить соединение с бэкэндом на основе этих учетных данных и каким-либо образом поддерживать получающееся соединение в памяти / базе данных? Есть ли другой способ?
  3. Если мы выберем второй подход для аутентификации пользователя, то возникает вопрос: я не хочу, чтобы API устанавливал новое соединение с серверной частью при каждом запросе пользователя. Это означает, что мне нужно как-то постоянно поддерживать состояние соединения, при этом убедиться, что API должен работать децентрализованно. например, пользователь A ранее обслуживался экземпляром докера 1 API, но теперь его запрос перенаправляется на экземпляр 2 докера, в этом случае я хочу использовать то же соединение пользователя с серверной частью, которое было установлено экземпляром API докера 1 , Итак, как мне поддерживать эту связь? Это противоречит принципам REST API, который не должен иметь состояния? Каков еще вариант для разработки системы, тогда? Спасибо.
  4. ол>

0 ответов