私はHerokuでホストされているRailsアプリを持っています。mySQLデータベースに対して長いバックエンド計算とクエリを実行する必要があります。
私の理解では、DelayedJobまたはWhenever gemを使用してバックエンドプロセスを呼び出すと、Rails(フロントエンド)サーバーのパフォーマンスに影響があります。したがって、2つの異なるRailsサーバーをセットアップしたいと思います。
最初のサーバーは、通常のRailsアプリと同様に、フロントエンド(ユーザーの要求に応答する)用です。2番目のサーバー(これもRailsサーバー)は、バックエンドのクエリと計算専用です。mySQLからのみ読み取り、計算を行い、結果を別のRedisサーバーに書き込みます。
私の感覚では、Rails開発者の多くはこれを行っていません。彼らは、Railsサーバーでバックグラウンドジョブを実行し、必要に応じてワーカーを追加することを好みます。私のサーバー構造は良いデザインですか、それともやり過ぎですか?知っておくべき落とし穴はありますか?
ありがとうございました。