Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GAされたRDS Proxy を試してみた /jawsug-chiba6
Search
Kenichiro Wada
August 27, 2020
Technology
0
420
GAされたRDS Proxy を試してみた /jawsug-chiba6
2020.08.27 JAWS-UG 千葉 オンライン #6 LT資料です。
Kenichiro Wada
August 27, 2020
Tweet
Share
More Decks by Kenichiro Wada
See All by Kenichiro Wada
My First Impression Of Kiro / 20250801-kumoben-lt
kwada
0
95
(全日本人)待望のS3トリガーのLambda無限ループ対応について / chibaraki-1
kwada
0
170
AWS Lambdaに出会って人生が変わった1人の10年間 /awslambda10th
kwada
0
120
GPSデバイスを使った簡易位置案内システムの構築をしてみた話。/jawsfesta2024
kwada
0
940
とある航空会社の飛行機の乗り方をお教えします。/20240913-lt
kwada
3
350
Building a Simple Navigation Guide Service Using GPS Devices/jaws-pankration2024
kwada
0
150
IaCジェネレーターを使って、昔に作ったLambda関数をCDK管理下においてみた / jaws-ug-josys-30
kwada
0
160
SORACOM UG Explorer 2023ハンズオンの裏側サービスを紹介 / soracom-ug-online-17
kwada
0
360
(2023.08.17 Update)Detecting and stopping recursive loops in AWS Lambda functionsでAWS Lambdaの無限ループを防ぐ! / jaws-ug-shizuoka
kwada
0
260
Other Decks in Technology
See All in Technology
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
1.2k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
59k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
540
AWS re:Invent 2025 を振り返る
kazzpapa3
2
110
I tried making a solo advent calendar!
zzzzico
0
130
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
130
国井さんにPurview の話を聞く会
sophiakunii
1
310
スクラムを一度諦めたチームにアジャイルコーチが入ってどう変化したか
kyamashiro73
0
160
Master Dataグループ紹介資料
sansan33
PRO
1
4.2k
Everything As Code
yosuke_ai
0
490
テストセンター受験、オンライン受験、どっちなんだい?
yama3133
0
200
Featured
See All Featured
We Are The Robots
honzajavorek
0
130
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.8k
Bash Introduction
62gerente
615
210k
Tell your own story through comics
letsgokoyo
0
770
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
210
Become a Pro
speakerdeck
PRO
31
5.8k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Fireside Chat
paigeccino
41
3.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
The untapped power of vector embeddings
frankvandijk
1
1.5k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
Transcript
("͞Εͨ3%41SPYZ Λࢼͯ͠Έͨ KBXTVH KBXTVHDIJCB JAWS-UG 千葉 オンライン #6
⾃⼰紹介 ⽒名:和⽥ 健⼀郎 アイレット株式会社 エンジニア JAWS-UG 千葉 運営メンバー SORACOM UGの運営にも最近参加
好きなAWSサービス: AWS Lambda 実は最近共著で本書きました。
71$-BNCEBͱ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • VPC内リソースにアクセスするためのLambda関数のこと • VPCにアタッチしたLambdaというのが正しいかな
• ⼀番多いであろう(多分)⽤途はLambdaのデータストアと して、RDBMS(RDS)を使うケース • エンプラ⽤途では割とあったのでは
71$-BNCEBͱ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 今の会社⼊って、 最初に担当した案件、 VPC Lambda
+ RDS(Aurora)案件でした。 (2016年、Node.js v4.3時代)
71$-BNCEBͱ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB (その当時の) VPC Lambdaの問題点 l
ENI作成問題 l DBコネクション問題 しかし、2019年のアップデートで、 この辺が全部解消されました
71$-BNCEBͱ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 2019年にあったアップデートは、以下 1. ENI作成タイミングの変更 2.
Provisioned Concurrency 3. RDS Proxy(厳密にはLambdaのアップデートではない)
71$-BNCEBͱ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 詳しいことは、 AWSJのSA下川さんの資料をご覧いただくといいかなと思いま す https://speakerdeck.com/_kensh/serverless-services-
update-at-aws-re-invent-2019
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 2019年のアップデートと書きましたが、 RDS Proxyは、Previewとして使えていて、 GAになったのは、2020年7⽉のことでした
今回はPreview時にも検証してたんですが、 GAになったので、 RDS Proxyをあり・なしでどう変わるのかを検証してみました
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 先に謝っておきますと、この検証の元ネタは、 7/28に開催された「RDS+Lambda が始まる。過去のアンチ パターンはどう変わるのか」
であった、AWSJの福井さんのDEMOになります
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB 構成 RDS Proxyなし RDS
Proxyあり
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • テスト条件 • 処理件数は500件と1000件で実施
• SQSへのメッセージ送信は10件毎に5秒Waitしながら実施 • なるべくLambdaの起動数を増やしたいので • SQSは3回リトライ失敗するとDLQ⾏き • RDS(Aurora)のmax_connectionsは100に設定 • Auroraだったので、もともと45だった(汗) • RDS Proxyは50%の接続を設定 • SQSトリガーのLambdaはDBコネクション接続後、90秒 SleepしてからデータInsert
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • 500件のケース
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • 500件のケース
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • 1000件のケース
3%41SPYZݕূͯ͠Έͨ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • 1000件のケース
·ͱΊ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • RDS Proxy 想像以上にすごい
• 意図的にコネクションが溜まるようなロジックにしたけど、 ちゃんとエラーなく処理される • しかも、単純にRDS Proxyに接続先を変えただけ • 今回は⾮同期処理でテストしたけど、同期処理(API-GW 経由)のRESTAPIで使うとどうなるかは別途検証したいと ころ • ピン留めという事象もあるらしいので、利⽤の際は注意必要 • RDS Proxy⾃体は別にLambda専⽤ではないので、活⽤でき るケースは多そう • お⾦かかるので、ご利⽤は計画的に
·ͱΊ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB • Aurora(MySQL)でやってしまったが、⾮AuroraのMySQL でも試した⽅が良かったかもしれないのは反省 •
SQSトリガーって、EventのRecordsオブジェクト内に複数 メッセージを格納していることを失念(知らなかった)して いた。 • SQSトリガーの復習にもなったので今回よかった • VPC Lambda⾃体は、使いやすくなったので、VPC内のリ ソースアクセス以外にも、別APIを叩く際のIP固定にも活⽤ できるケースもありそう
͓ΘΓ +"846(ઍ༿ ΦϯϥΠϯ 7PM KBXTVH KBXTVHDIJCB ご静聴ありがとうございました