1

これが私の仕事です。2 つおきのバックグラウンダー タスクは、何らかのデータに基づいて json を生成する必要があります。この操作は CPU を集中的に使用するものではなく (主にネットワーク)、JSON コンテンツ (5 ~ 10KB) を生成します。操作には約 200ms かかります。

また、数秒に 1 回、約 1000 のクライアントがこのコンテンツを要求しています。約 200 リクエスト/秒としましょう。

サーバーは現在の実際のjsonを出力するだけです。

現在、この作業に関連する他の仕事をしているレール4 + nginx + passenger + debianサーバーがすでにあります。

学生であるため、次の方法で簡単にスケーリングできる最も費用対効果の高い方法でサーバーを作成したいと考えています。

  1. バックグラウンダー ジョブをいくつか追加し、より多くの json を生成する
  2. リクエスト数を 1 秒あたり 10,000 に増やす

現在、2 つの CPU コアを搭載した linode 2048 ssd を使用しています。私の質問は次のとおりです。

  1. バックグラウンダー タスクにどの gem/solution を使用すればよいですか (現在は ruby​​ で記述されています)
  2. 実際の json を効果的に保存し、バックグラウンダーから rails/nginx に渡す方法。
  3. json をできるだけ速く提供する方法。
4

1 に答える 1