2016-10-25 10 views
-2

私は数百万のレコードを持つテーブルを持っています。私はSails jsをサーバーのサイド・コードとして使用しています.React jsでビューを表示し、MysqlをDBMSとして表示しています。だから、より速くデータを検索するための最良の方法は何ですか?反応jsとセイルで数百万のレコードを処理する方法js

同様に、エンドユーザーは、UIにも影響を与える膨大な量のデータを取得する気がしません。

最初に50レコードしか持っていないのですが、ページネゴシエーションロジックを使ってページの下部にページ番号を表示し、残りをsocket.ioでバックグラウンドで取り出しますか?

それを扱う良い方法はありますか?

答えて

0

これは、実際にユーザーがデータをどのように使用するのかによって異なります。 おそらくには、データの最初のページだけを取得するAPI呼び出しが必要です(おそらく、ページを取得できるように:api/mydata/<pagesize>/<pagenumber>)。

次に、あなたのユーザーが期待することに依存します。彼はすべてのデータを見るためにすべてのページをクリックしますか?その場合、あなたが言及しただけでなく、他のすべてを読み込むように見えるでしょう。しかし、これは私にとってはそう思わないでしょう。

ユーザーが数ページしか表示しない場合は、次のページのデータをバックグラウンドで読み込み(api/mydata/<pagesize>/<currentpage+1>)、ユーザーがナビゲートするたびに次のページを読み込むことができます。

次に、特定のページ番号へのジャンプをサポートする必要があります。データがあるかどうかを確認し、データが取得されている間はロード状態を表示する必要があります。

これは、通常のリクエストの代わりにsocket.ioが必要な理由がわかりません(クライアントに「要求」をするためにサーバを使用する必要がある場合はsocket.ioが必要です)

+0

はい私はソケットが必要ないと思います。 –

関連する問題