cocos2d-xなどなどいろいろやってますこの広告は、90日以上更新していないブログに表示しています。Relicなどを使ってる場合は、自分の実装以外で使ってるコネクションまで都度接続になってしまう別スレッドでDB操作を行っている場合、処理中であってもそのスレッドのコネクションまで切断されてしまう(Railsのコネクション破棄がプロセス単位のため)コネクションプールを活かしたままこの問題を解決できたので、その方法をご紹介します。Aurora利用時のフェイルオーバー問題とは詳しくはこちらqiita.com問題が発生する状況をまとめると以下の通りです。コネクションプールを使わない上記のQiitaの記事にある方法がこれ。具体的には以下のgemを導入して都度接続にする方法。github.comこれなら確かにReaderにつながることはなかったです。今回考えたやり方がこちら。Relicを使ってるのでそっちまで都度接続されてしまう別スレッドでDB操作を行っている処理があり、突然コネクションが切断されてしまって使い物にならなかったを回避したかったたからです。Auroraのための限定的な対応になるので、gemとか作ってないです。́Д`))gist.github.comこれだけ。呼び出してコネクションをコネクションプールに戻します。これだと接続先情報がそのまま残ってしまうため、何度試行してもReaderに接続にいってしまいます。呼び出してコネクションをプールに戻さずに破棄しています。この方法であれば、普段はコネクションプールを使い続けることができます。Auroraの接続エラーに限定してコネクションを破棄するため、エラーメッセージから対象を限定しています。呼び出して常にコネクションを破棄していました。AuroraのCNAMEの切り替え?)、数秒〜20秒ぐらいはReaderにつながってしまう時間があります。これは都度接続だったとしても同じ状況かと。その間は更新処理はエラーになるのでご注意ください。あとMySQLライブラリのエラーメッセージから接続回りのエラーを判断してますので、エラーメッセージが変わったりするとコネクションを破棄してくれなくなったりするかも。0.3.21と0.4.3では問題なかったです。利用実績まだ本番では利用していませんが、数百回試した限りでは意図した通りの動作をしています。導入してしばらく様子を見るつもり。)mご意見ご指摘ありましたらぜひお願いします。更新いまは普通に運用で利用してますので、問題ないかと思います。読者になる検索リンクはてなブログブログをはじめる週刊はてなブログはてなブログPro最新記事ISUCON9予選に参加しました月別アーカイブスポンサーリンクはてなブログをはじめよう!matsukazさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。