Перейти к главному контенту

Прокси-сервер Amazon RDS

Повышение масштабируемости, устойчивости и безопасности приложений

Что такое прокси-сервер RDS?

Прокси-сервер RDS – это полностью управляемый и удобный в использовании прокси-сервер с высоким уровнем доступности для Amazon RDS, который позволяет повысить: 1) масштабируемость приложений за счет организации пула и совместного использования подключений к базам данных; 2) уровень отказоустойчивости, сокращая время обработки резервного переключения баз данных почти на 66 %, сохраняя при этом подключения приложений; 3) уровень безопасности путем принудительного применения аутентификации AWS IAM для баз данных и безопасного хранения учетных данных в Менеджере секретов AWS, когда это необходимо.

Чтобы использовать прокси-сервер RDS, вам не нужно выделять дополнительную инфраструктуру или управлять ею, и эту функцию можно включить для большинства приложений без изменения кода. 

Преимущества прокси-сервера Amazon RDS

    Прокси-сервер RDS поддерживает пул установленных подключений к инстансам базы данных RDS, что снижает нагрузку на вычислительные ресурсы и память базы данных, которая обычно возникает при установлении новых подключений. Прокси-cервер RDS также позволяет распределять редко используемые подключения к базе данных, поэтому к базе данных RDS обращается меньше подключений. Благодаря этому пулу база данных может эффективно обрабатывать большое количество подключений приложений с высокой частотой, что позволяет масштабировать приложение без ущерба для производительности.

    Прокси-сервер RDS сводит к минимуму прерывание работы приложений в результате сбоев, влияющих на доступность базы данных, за счет автоматического подключения к новому инстансу базы данных при сохранении подключений к приложениям. При резервном переключении прокси-сервер RDS направляет запросы непосредственно в новый инстанс базы данных. Это сокращает время переключения баз данных Aurora и RDS 66 %. Прокси-сервер RDS также поддерживает работу в нескольких зонах доступности за счет предоставления двух резервных инстансов с резервным переключением, что обычно занимает менее 35 секунд, и возможностью чтения, двукратного снижения времени задержек записи, дополнительного объема ресурсов чтения и сокращения времени простоя при промежуточном обновлении версии, как правило, до одной секунды.

    Прокси-сервер RDS предоставляет дополнительный контроль над безопасностью данных, позволяя использовать аутентификацию IAM для доступа к базе данных и избегать жесткого кодирования мандатов базы данных в коде приложения. Кроме того, это позволяет централизованно управлять данными для доступа с использованием Менеджера секретов.

    Прокси-сервер базы данных помогает справиться с дополнительной нагрузкой на базу данных. Хотя классические прокси-серверы позволяют более эффективно масштабировать приложения, их сложно развертывать, исправлять и управлять ими. Это отнимает ресурсы, которые можно было бы потратить на разработку отличных продуктов. Прокси-сервер RDS – это полностью бессерверный и полностью управляемый прокси-сервер баз данных, который автоматически масштабируется в соответствии с рабочей нагрузкой и избавляет от необходимости устанавливать исправления и управлять собственным прокси-сервером.

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

Начало работы с прокси-сервером Amazon RDS

Ищете информацию о том, как быстро начать работу с прокси-сервером RDS? Ниже приведены наиболее важные руководства по технической документации, руководства пользователя и учебные пособия, в которых показано, как начать работу с прокси-сервером RDS за несколько шагов.

Вопросы и ответы

Общие вопросы

Открыть все

    Приложения с непредсказуемыми рабочими нагрузками. Приложения, которые поддерживают разносторонние рабочие нагрузки, могут пытаться открыть множество новых подключений к базе данных. Средства управления подключениями прокси-сервера RDS дают возможность масштабировать приложения, которые работают с непредсказуемыми рабочими нагрузками, путем эффективного повторного использования подключений к базе данных. Сначала прокси-сервер RDS разрешает нескольким подключенным приложениям совместно использовать соединение с базой данных, чтобы эффективно применять ее ресурсы. Затем прокси-сервер RDS обеспечивает предсказуемую работу базы данных, управляя количеством открытых подключений к ней. В конце концов, прокси-сервер RDS удаляет запросы приложений, которые невозможно обслужить, чтобы общая производительность и доступность приложения оставались неизменными.

    Приложения, которые часто открывают и закрывают подключения к базе данных. Приложения, в основу которых положены такие технологии, как Serverless, PHP или Ruby on Rails, могут часто открывать и закрывать подключения к базе данных для обслуживания запросов. Прокси-сервер RDS создает пул подключений к базе данных во избежание излишней нагрузки на вычислительные мощности и память базы данных из-за установки новых подключений.

    Приложения, которые сохраняют подключение, но не пользуются им. Приложения в таких отраслях, как SaaS или интернет-коммерция, могут сохранять подключение к базе данных в режиме простоя, чтобы сократить время отклика при возобновлении активности клиента. Вместо того чтобы выделять избыточные ресурсы баз данных для поддержания подключений, которые, в основном, простаивают, можно воспользоваться прокси-сервером RDS, чтобы сохранять только необходимое количество простаивающих подключений для оптимального обслуживания активных запросов.

    Приложения, которые требуют доступности при временных сбоях. Используя прокси-сервер RDS, можно создавать приложения с повышенной устойчивостью к отказам баз данных без необходимости в написании сложного кода для обработки сбоев. Прокси-сервер RDS автоматически направляет трафик к новому инстансу базы данных, сохраняя подключения со стороны приложений. Кроме того, прокси-сервер RDS работает в обход кэша системы доменных имен (DNS), сокращая время обработки резервного переключения почти на 66 % при использовании баз данных Amazon RDS и Aurora в нескольких зонах доступности. При резервном переключении базы данных время отклика приложения может увеличиться, что приведет к повтору транзакций.

    Повышенный уровень безопасности и централизованное управление учетными данными. С помощью прокси-сервера RDS можно создавать приложения с высоким уровнем безопасности путем принудительного применения аутентификации на основе IAM для подключения к реляционным базам данных. Кроме того, прокси-сервер RDS предоставляет возможность централизованного управления учетными данными с использованием Менеджера секретов AWS.

    Благодаря прокси-серверу RDS можно изменить подход к созданию современных бессерверных приложений, которые используют преимущества эффективности и простоты реляционных баз данных. Во-первых, с помощью прокси-сервера RDS можно масштабировать бессерверные приложения, создавая пулы подключений к базам данных и повторно используя эти подключения. Во-вторых, с RDS Proxy больше не потребуется обрабатывать данные для доступа к базе данных в коде Lambda. Для аутентификации в RDS Proxy и базе данных можно воспользоваться ролью выполнения IAM, связанной с функцией Lambda. В-третьих, для раскрытия всего потенциала бессерверных приложений на основе реляционных баз данных не придется управлять новой инфраструктурой или кодом. Прокси-сервер RDS является полностью управляемым и масштабирует свои ресурсы в зависимости от требований приложения.

    Прокси-сервер RDS доступен для версии Amazon Aurora, совместимой с MySQL, версии Amazon Aurora, совместимой с PostgreSQL, Amazon RDS для MariaDB, Amazon RDS для MySQL, Amazon RDS для PostgreSQL и Amazon RDS для SQL Server. Список поддерживаемых версий ядер приведен в руководствах пользователя Amazon Aurora или Amazon RDS.

    Чтобы включить прокси-сервер Amazon RDS для базы данных Amazon RDS, потребуется всего лишь несколько щелчков мыши в консоли Amazon RDS. При включении прокси-сервера RDS необходимо указать VPC и подсети, из которых будет осуществляться доступ. Пользователь Lambda может включить прокси-сервер RDS для своей базы данных Amazon RDS и настроить функцию Lambda для доступа к нему всего в несколько щелчков мыши и прямо в консоли Lambda.

    Для аутентификации между приложениями и базой данных через прокси-сервер RDS доступно несколько вариантов. 

    Вы можете использовать традиционную аутентификацию по имени пользователя и паролю, сохраняя учетные данные в Менеджере секретов AWS. Это позволяет централизовать, защитить и упростить управление учетными данными для вашего приложения. При использовании Менеджера секретов можно подключиться к прокси-серверу RDS так же, как и к базе данных. Указанные имя пользователя и пароль сопоставляются с учетными данными, хранящимися в Менеджере секретов, а затем используются для подключений к базе данных.

    Для повышения безопасности можно применять аутентификацию на основе IAM. Вместо указания имени пользователя и пароля ваши приложения могут использовать роль исполнения IAM, связанную с такими сервисами, как AWS Lambda или EC2, для аутентификации с помощью прокси-сервера RDS. Доступно два варианта аутентификации IAM.

    • Использовать IAM-аутентификацию для подключений между клиентом и прокси-сервером, и Менеджер секретов – для соединений между прокси-сервером и базой данных.
    • Использовать IAM-аутентификацию как для подключений между клиентом и прокси-сервером, так и для соединений прокси-сервера с базой данных (это избавит от необходимости хранить пароли в Менеджере секретов).

    Дополнительные сведения об аутентификации с помощью прокси-сервера RDS см. в разделе Подключение к базе данных через прокси-сервер RDS

    Да. Подробную информацию об SLA прокси-сервера Amazon RDS см. на этой странице.

Клиенты

Acquia

«Мы постоянно стремимся оптимизировать и улучшить производительность и масштабируемость для своих клиентов. Поскольку Drupal изначально не поддерживает пулы подключений, нам нужно было решение, которое позволило бы нам лучше масштабировать подключения нашего приложения в реляционных базах данных. Прокси-сервер RDS идеально отвечает всем требованиям! Благодаря прокси-серверу RDS приложения Drupal наших клиентов могут легко использовать готовый пул установленных подключений. Это позволило нам лучше справляться с внезапными всплесками посещаемости веб-сайтов и повышать эффективность своих баз данных».

Эд Бреннан, главный архитектор, Acquia

Missing alt text value

CAINZ

«У нас есть бессерверная инфраструктура API на основе AWS Lambda, которая, как ожидается, будет поддерживать десятки тысяч пользователей и требует масштабируемого внутреннего хранилища данных. Хотя для таких сценариев мы традиционно использовали базы данных NoSQL, проблема в этой ситуации заключалась в том, что нам требовались мощные возможности SQL-запросов для управления данными, предоставляемыми базами данных Amazon RDS и Amazon Aurora, и доступа к ним. Теперь эту проблему можно решить с помощью прокси-сервера RDS, используемого перед нашими базами данных RDS и Aurora. В ходе тестирования мы наблюдали 4-кратное увеличение времени отклика прокси-сервера RDS при пиковых нагрузках. Прокси-сервер RDS является для нас выгодным, поскольку мы можем использовать знакомые SQL-инструкции в своих реляционных базах данных, и все, что нам нужно было сделать, это просто сменить адрес».

Масахиро Араи, отдел цифровой стратегии, CAINZ

Missing alt text value

CloudHealth by VMware

«Недавно мы перенесли базы данных MySQL в Amazon Aurora. Наши приложения поддерживают большое количество подключений, что создает нагрузку на наши базы данных во время всплесков количества подключений и приводит к перебоям в работе наших клиентов. После перехода на Aurora прокси-сервер RDS стал важнейшим элементом нашей архитектуры для масштабирования приложения и оптимизации затрат. Благодаря прокси-серверу RDS наши приложения могут открывать гораздо больше подключений к нему, что, в свою очередь, сокращает количество подключений к базам данных в часы пик до 90 % и защищает базу данных от большого количества подключений. Благодаря прокси-серверу RDS мы смогли повысить стабильность своей системы и сократить расходы. Уменьшив количество системных ресурсов, расходуемых на подключения, мы смогли консолидировать базы данных в меньшее количество кластеров Aurora и снизить общие эксплуатационные расходы».

Питер Фейн, старший архитектор программного обеспечения CloudHealth by VMware

Missing alt text value

Dream 11

«Прокси-сервер RDS стал решающим фактором для нас во время Индийской премьер-лиги 2023 года. Он помог нам справиться с резкими скачками трафика во время циклической блокировки без ущерба для производительности и доступности базы данных. Благодаря ему мы также смогли динамично масштабировать ресурсы и оптимизировать затраты, а также обеспечить стабильную работу для своих пользователей. Прокси-сервер RDS необходим для любой игровой онлайн-платформы, которая должна обрабатывать непредсказуемый и большой объем трафика».

Бипул Карнани, главный инженер в Dream 11

Missing alt text value