1

いくつかのチュートリアルをグーグル検索し、いくつかのSOの回答を閲覧しましたが、問題のレシピを見つけることができませんでした.

ほぼリアルタイムの株価チャートを表示することになっている Web サイトを書いています。データは常に更新される MySQL データベースに保存されます。グラフを描画するために必要なすべてのデータを取得する find_by_sql クエリ コードを作成しました。パフォーマンス以外はすべて問題ありません。さまざまなクエリがデータベースからすべてのデータを取得するのに 1 秒から 1 分かかります。この時間には、必要な (My)SQL サーバー側の計算が含まれます。これは単に容認できません。

データセット全体ではなく、一度に 1 つのポイントでデータが MySQL サーバーからクエリされる場合、個々のポイントを取得するのに約 1 ~ 100 ミリ秒しかかかりません。

データのフェッチ プロセスは、ブラウザ主導で行われる可能性があると思います。ユーザーがチャートを描画するためにボタンを押した後、コントローラーはデータベースに対して 1 つのリクエストを行い、たとえば進行状況バー (1% の準備ができているなど) をレンダリングします。ブラウザーが応答を受け取ると、すぐに (ajax) 要求を行い、サーバーは次のデータを取得して "2%" をレンダリングします。

以下同様に、すべてのデータの準備が整い、サーバーが要求されたグラフを表示するまで続けます。これは rails+js で実装できますか? Web で同様の問題を解決するためのチュートリアルはありますか? もしそれが実現可能であるなら、誰かがすでにこれをやったことがあるはずです。

私は ajax に関するいくつかの記事を読みました。一般的な原則は理解していると思いますが、重要な ajax プログラミングを自分で行ったことはありません。

御時間ありがとうございます!

4

1 に答える 1

1

アニメーション GIF を表示する div を含むページを読み込むことができます (「動作中」を示します)。次に、body onload を使用して ajax リクエストを起動し、その div の内容を置き換えます。

<body onload="some function call to Ajax.Updater('chart')">
<div id="chart">
  <img src="working.gif">
</div>
于 2010-04-01T02:27:34.597 に答える