Аврора разрешает записи только для чтения конечной точки - PullRequest
0 голосов
/ 06 апреля 2019

Я недавно настроил базу данных Aurora RDS, и роли Writer по умолчанию показывают две конечные точки:

1) Writer 2) Reader

Однако, когда я получаю доступ с конечной точки Reader, я все еще могуобновить записи в базе данных.

Может кто-нибудь объяснить, почему так происходит?

1 Ответ

2 голосов
/ 07 апреля 2019

Это ожидаемое поведение в кластере Aurora только с одним экземпляром.

Кластер Aurora - это набор из одного или нескольких экземпляров, каждый из которых имеет доступ к одним и тем же данным, хранящимся в томе кластера Aurora. Одним из экземпляров является «писатель» (может изменять данные), а если их несколько, то любые дополнительные экземпляры являются «читателями» (не могут изменять данные).

Записи DNS конечной точки кластера автоматически управляются так, что они всегда указывают на правильные экземпляры.

Конечные точки кластера Aurora с одним мастером - для совместимости - работают одинаково с точки зрения приложения, независимо от того, имеется ли у вас 1 или несколько экземпляров, - есть конечная точка устройства записи, которую приложение может использовать там, где требуется запись, и конечная точка только для чтения, которую приложение может использовать в случаях, когда приложение знает, что ему не нужно писать.

Имея только один экземпляр в кластере, конечная точка RO указывает на устройство записи, поэтому приложение, предназначенное для разделения на чтение / запись, может работать без изменений. Если эта конечная точка не предоставила полезного назначения в кластере с одним экземпляром, масштабирование приложения, поддерживаемого Aurora, на уровне базы данных или на уровне базы данных потребовало бы изменений приложения, но в том случае, если оно реализовано, это не нужно ... но на в то же время «конечные точки» - это просто логические конечные точки - записи DNS. Экземпляр, принимающий соединение, не знает, как было получено соединение.

Когда имеется более одного экземпляра, соединения с конечной точкой RO балансируются среди считывателей с использованием DNS с коротким TTL.

...