1 日あたり約 250,000 の挿入を取得する特定のテーブルの監視に関するアドバイスを探しています。大規模ではありませんが、急速に成長しており、このままでは作業を続けることができません。
メイン アプリケーションは、MySQL データベースを備えた RoR4 に依存しています。データは多数の RADIUS サーバーから直接データベースにストリーミングされます。
特定の列で特定の値を監視し、簡単な検索を実行する必要があります。
if column == xxx
venue = Venue.find_by(bar: foo)
if venue.is_monitored?
do some other shizzle
end
end
ロケーション テーブルも些細なサイズではないので、何かが起こるたびに何十万行も調べたくありません。
誰かがこれを行うための迅速かつ効率的な方法を推奨するのを助けることができますか? 現在、各挿入をチェックすることは、Rails ではばかげているようです。また、60 秒ごとにバックグラウンドでジョブを処理しようとしましたが、それは時代遅れのようです。
これまでの最善の解決策は、挿入時の値を監視し、それを Redis に公開し、ノード サーバーを使用してイベントをリッスンすることでした。そしてそれを Rails に戻します。
これが主観的または的外れである場合は申し訳ありませんが、これを行うためのおいしい方法を誰かに教えてもらいたいです.