$shibayu36->blog;

クラスター株式会社のソフトウェアエンジニアです。エンジニアリングや読書などについて書いています。

RDSのt1.microのmax_connections

 RDSを使っていたら、なぜかいきなりToo many connectionsでISEになるなあと思っていたら、max_connectionsの制限を超えてしまっていた。

 RDSのt1.microの最大コネクション数はデフォルトが34になっているらしく、まあまあ少ない。例えばwebが2台5processずつ、workerが2台5processとかになっていて、webがプロセス単位でコネクションをキャッシュしていたりとかすると、無停止デプロイにしようとして一瞬4台構成にした時に最大コネクション数が40になってこれを超えてしまう。
 microだから仕方ないけど、変にプロセス単位でコネクションをキャッシュしないとか、workerを増やしすぎないとか工夫が必要そう。

 一応 http://d.hatena.ne.jp/deeeki/20110606/rds_modify_db_parameter_group のように、parameter groupという仕組みを使うとこの辺りの設定変えられるようになっているらしい(?)けどまだ試してない。