0

何千ものオンライン JSON から、30MB に相当する約 300.000 行の最終行を取得する必要があります。

コーディングの初心者である私は、JS に固執して $getJSON データを切り取り、興味深い部分を自分の に追加<body>し、何千ものオンライン JSON をループすることを好みます。しかし、私は疑問に思います:

  1. 私の Web ブラウザーは、300.000 件の $getJSON クエリと、その結果の 30 ~ 50 MB の Web ページをクラッシュすることなく処理できますか?
  2. JS を使用してこの結果をファイルに書き留めることは可能で、スクリプトの動作は常に保存されますか?

スクリプトは約 24 時間実行されると予想しています。数値は概算です。

編集:サーバー側の知識はありません。JS だけです。

4

1 に答える 1

4

これに対するあなたのアプローチには、いくつかの点が正しくありません。

  1. 別のソースからデータを取得 (および処理) し、それをビジターに表示する場合、このスケールの処理はバックグラウンド プロセスで個別に事前に行う必要があります。Web ブラウザは、あなたが話している規模のデータ プロセッサとして使用されるべきではありません。
  2. 30 ~ 50 MB の Web ページを表示しようとすると、ブラウザのクラッシュ、応答性の欠如、タイムアウト、長い読み込み時間など、多くのイライラする問題が発生します。古い IE ブラウザーを使用するユーザーがいると予想される場合、ユーザーは試すことさえせずにあきらめる可能性があります。

このタスクを引き出して、バックエンド インフラストラクチャを使用して実行し、結果をデータベースに保存して、ユーザーが検索、フィルター処理、およびアクセスできるようにすることをお勧めします。検討する価値のあるいくつかのオプション:

クロン

cron を使用すると、毎日または毎時など、繰り返し定期的にタスクを実行できます。データセットを継続的に更新する場合は、これを使用します。

ワーカー (Heroku)

Heroku を実行している場合は、アプリの既存のトラフィックを詰まらせないように、dyno から取り出して別のワーカーを使用します。

于 2013-03-29T17:18:52.143 に答える