台風13号が急接近する中行われたデベロッパー勉強会でしたが、デモ満載のDeep Diveと「ハマったことと開発自慢」を共有し合うグループワークとで、迫り来る台風を忘れてしまうくらい、大変熱量の高い勉強会となりました。
今回はDeep Dive 3コネクションマネージャー編の一部をレポートいたします。
インフォテリア株式会社 第1研究開発部 部長 一刀 卓
みなさん「コネクション」ってご存知ですか?コネクションはRDB、HTTP、SMTPなどへの接続情報の定義体です。もちろん定義だけでなく実際の接続も行います。
フローサービス管理コンソールでのコネクション設定画面
ここにいる皆さんはすでに「コネクション」はご存知ですよね。
では「コネクションプール」はご存知でしょうか。
RDBコネクションのように再接続に時間がかかるものは、1度接続したコネクションを「コネクションプール」に入れて再利用できます。
コネクションプール内のコネクションは、利用されている間は一旦コネクションプールから削除されます。そして利用(リクエスト実行)が完了するとコネクションプールに戻されます。
おそらくプールされたコネクションがどんなタイミングで解放されるのかに関心をお持ちの方が多いのではないでしょうか。
下記のスライドにまとめてみました。
コネクションプールにプールされたコネクションの情報はflow-ctrlのlistコマンドで表示することができるので、ここでちょっと実験してみましょう。
今、コネクションプールに2つのコネクションがあります。
この状態で、「DBエラーで異常終了するASTERIAフロー」を1本実行してみましょう。
すると・・・
プールからコネクションが1個消えたのがわかります。
先ほどのスライド(P.11)記載のように「コネクションを使用したフローが異常終了した時」にはプールされたコネクションが解放されることが実証されましたね。
続いてはコネクションプール上のコネクションが99回使用された状態を作り・・・。
この状態でこのコネクションを利用するASTERIAフローを1本実行してみましょう。
すると・・・
99回利用していたコネクションがコネクションプールから消えました。
このデモで「コネクション再利用回数(初期値:100)を超えた時」にもプールされたコネクションが解放されることが実証できました。
当日はこれ以外にもコネクションに関する様々な仕組みや設定項目が解説されました。
当日のプレゼン資料はASTERIA Warp Developer Network Slackに掲載しています。
ASTERIA Warp Developer Network Slack招待リンクはこちら
参加者からは次のようなコメントをいただきました。
デベロッパー勉強会では、リアルタイムにASTERIA Warp Developer Network Slack上で補足解説や質問受付をしています!今回は、グループワーク「ハマったこと、開発自慢」の発表内容も一部シェアされてますのでデベロッパー勉強会開催時にはぜひSlackものぞいてみてください。
“ASTERIA Warpユーザーの皆様をもっとハッピーに!”をモットーに日々AUGを運営しています。
Related Posts
ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。
アステリア製品デベロッパー同士をつなげ、技術情報の共有やちょっとしたの疑問解決の場とすることを目的としたコミュニティです。