Архитектура AWS для бэкэнда в периферийных точках - PullRequest
1 голос
/ 08 апреля 2019

В настоящее время у меня есть реагирующее веб-приложение, которое распространяется по всему миру через облачный фронт AWS.

Я хочу знать, как спроектировать сервер и БД, чтобы они также были глобально распределены.Бонус за максимально возможное отсутствие сервера

Мои мысли и знания в настоящее время соответствуют следующему:

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

2) Узкое место в базе данных.Если вы выберете реляционную БД, даже если она совместима с Aurora PostgreSQL, у вас нет возможности распределить БД по регионам AWS.Даже если вы сделали это, сделайте копию только для чтения.Должен ли я просто забыть о реляционных данных как глобально распределенных или выбрать другой продукт БД из AWS?

1 Ответ

0 голосов
/ 08 апреля 2019

1.) Используйте API GW + Lambda, развернутые в нескольких регионах (ИМХО, это больше без сервера, чем без операции Kubernetes/Fargate, но не все приложения без сервера).Используйте Route 53 с политикой маршрутизации с задержкой, чтобы пользователь направлялся в регион с наилучшей задержкой.

2.) Aurora также имеет версию Global (только MySQL) - https://aws.amazon.com/rds/aurora/global-database/

...