問題 Rails は Connection Pooling を前提に作られている。 しかし、サービスの規模が大きくなるとデータベースへの接続数が多くなってしまい、メモリを無駄に消費してしまう。 解決方法 コネクションプールをやめ、リクエスト毎やワーカ毎等でデータベースへ接続を行う様にする。 Resque の場合 フォーク後に全てのコネクションをクリアしてしまう。
Ruby 2.1.1 Rails 4.1.0rc1にて動作確認。 Rails内からSES経由でのメール送信をキューを利用した非同期配信したかったので、設定してみました。 初期設定 ResqueでRedisを使用するため、事前にインストールしておきます。 Gemfile gem 'aws-ses', '~> 0.5.0', :require => 'aws/ses' gem 'resque', :require => 'resque/server' gem 'resque_mailer' gem 'daemon-spawn', :require => 'daemon_spawn' SESの設定 事前にAmazon SESのメール認可設定やアクセスキーの取得が必要になります。 こちらなどが参考になります。 RailsのActionMailerからAmazon SESのSMTPでメールを送信する
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く