ヤマムギ

growing hard days.

*

RDS ProxyをAurora MySQLで

      2021/09/27

Lambda関数をたくさん同時実行してMySQLにアクセスしても大丈夫なようにRDS Proxyを試してみました。

AuroraはMySQLでクラスターを起動しておきました。

RDS Proxyの作成

RDSコンソールからプロキシーの作成をしました。
エンジンはMySQL、データベースは作成済のAuroraクラスターを指定して、接続プールの最大数は100%にしました。

Secrets Managerが必須なので作成しました。
ユーザー名、パスワードはAuroraクラスターのマスターユーザー名とパスワードを指定しました。
IAMロールは新規作成しました。
サブネットはAuroraクラスターのサブネットグループと同じ。
セキュリティグループはAuroraクラスターと同じですが、自分自信をソースとして3306を許可しておきました。

データベースの準備

デモデータを用意しておきました。

テスト用のLambda

Lambdaを実行するLambda関数

データベースに接続するLambda関数を100回実行するLambda関数です。

データベースに接続するLambda関数

pymysqlはLambdaレイヤーでアップロードしています。
接続してSELECTを実行するだけです。

Auroraクラスタに直接接続

まずは、Auroraクラスタに直接接続してみました。

リクエストの数だけDB接続が作成され、途中から次のエラーになりました。
[ERROR] OperationalError: (1040, ‘Too many connections’)

RDS Proxyを使って接続

プロキシエンドポイントが作成されていたので、host=の行を差し替えました。

今回は’Too many connections’エラーが発生することなくすべて処理ができました。
RDS Proxyがうまくやってくれたのですね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

S3 Intelligent-Tieringのオブジェクトの階層移動をCloudWatchメトリクスで確認

CloudWatchメトリクスの保存期間は現時点で15ヶ月(455日)なのでそろ …

Amazon Quantum Ledger Database(QLDB)でサンプル台帳の作成と検証

Quantum Ledger Database(QLDB)を触ったことなかったの …

QuickSightのVisualizeをダッシュボード化して定期メール

「Backlogの実績工数をAmazon QuickSightで可視化してわかっ …

Amazon SNSサブスクリプションフィルターを設定してPython(boto3)からPublish

上記のような構成でRocketChatを使うとき使わないときがあります。 都度都 …

Systems Manager パブリックパラメータCLIでAWSのサービス数を出力してみました(2020/5/26)

先日のAWSのサービス数を数えてみました(2020/5/23)を見られて、お師匠 …

LINE BOT AWARDS 2017に応募しました

LINEの友達追加QRです。 動作のご確認にどうぞ LINE BOT AWARD …

Kinesis Data AnalyticsをKinesis Data Streamsに接続してSQL検索する

Amazon Kinesis Data StreamsにTwitter検索データ …

AWSのAmazon LinuxにGitマスターサーバをインストールしてRedmineリポジトリブラウザで見る

Amazon LinuxにGitをインストールする Gitをインストールして自動 …

AWS Organizationsで組織全体のAWS CloudTrailを有効にしました

Organizationsのサービスメニューから、CloudTrailを選択して …

AWS Lambda(Python)で生成した文字をAmazon Connectで音声を設定して発信する

Amazon Connectから発信する電話の音声を動的に設定します。 Lamb …