Межрегиональные реплики чтения и одна реплика чтения с AWS Global Accelerator
Я хотел бы знать, что еще рекомендуется, если один инстанс БД должен использоваться в разных регионах AWS? Что лучше: использовать реплики чтения между регионами или использовать реплику чтения в регионе происхождения + AWS Global Accelerator?
Есть ли какое-нибудь "лучшее практическое решение" для глобальных приложений?
У меня нет опыта работы с AWS, и большинство вещей для меня довольно новы. Так что я знаю, что мой вопрос может показаться любительским.
Из того, что я читал, я думаю, что одна централизованная реплика чтения - лучшее решение из-за задержки между регионами, но если это так, зачем вообще кому-то использовать межрегиональные реплики?
1 ответ
Если ваше приложение размещено в регионе, например eu-west-1
лучшая производительность чтения всегда достигается при чтении данных из eu-west-1
.
Если у вас есть клиенты в us-east-1
вам нужно выбрать один из трех вариантов:
Расположение края
Вы уменьшаете задержку, используя периферийные местоположения, например CloudFront или Global Accelerator. Это уменьшит задержку за счет использования AWS Backbone для маршрутизации к исходной точке. Это быстрее, чем раньше, но приложение остается в исходном регионе (в данном случаеeu-west-1
). Вы также храните только одну копию приложения.
Маршрутизация на основе задержки
Эта опция приближает приложение к пользователю, используя либо Route 53 с записями на основе задержки, либо Global Accelerator, вы можете разрешить свои домены в том месте, которое имеет наименьшую задержку для них. У вас будет ваш центральный регион (где живет readwrite), а затем создать межрегиональные реплики. Это обеспечит наилучшую производительность чтения, поскольку чтение выполняется локально (а не в разных регионах).
В примере eu-west-1
является основным регионом с перекрестными репликами регионов в us-east-1
. Задержка между регионами наблюдается только во времени, необходимом для записи в режим чтения и записи (в исходном регионе, если вы не используете перенаправление записи реплики чтения Aurora). Это, безусловно, самый сложный и дорогостоящий вариант, но в целом он обеспечивает наилучшую производительность.
Ничего не делать
Если вы ничего не сделаете, этот вариант будет использовать общедоступный Интернет для маршрутизации к хосту, у тех, кто находится дальше от вашего приложения, будет большая задержка, но это самый дешевый вариант.
Резюме
По сути, вам нужно решить, насколько важен перекрестный регион, если это просто потому, что ваша база пользователей находится в более отдаленном регионе, тогда важно убедиться, что вы как можно ближе к ним. Вам не нужно думать о репликах, если вы находитесь в определенном географическом регионе.
Помните, что вы всегда можете улучшить свою инфраструктуру, когда возрастет спрос из других географических регионов.