1つのシナリオで1000レコードをロードする必要があり、時間がかかりすぎるmvc3サイトがあります。クエリは1秒間実行され、データの表示には約12秒かかります。残りのデータをロードしながら、データの一部を表示する方法はありますか?これは深刻なパフォーマンスの問題です。
提案やサンプルは大歓迎です。
1つのシナリオで1000レコードをロードする必要があり、時間がかかりすぎるmvc3サイトがあります。クエリは1秒間実行され、データの表示には約12秒かかります。残りのデータをロードしながら、データの一部を表示する方法はありますか?これは深刻なパフォーマンスの問題です。
提案やサンプルは大歓迎です。
Webワーカーにデータをロードさせ、ロード時にメインアプリケーションに送信させると、メインアプリケーションがDOMでこれを更新して、非常にノンブロッキングのデータフローを提供できます。
おそらく、データの一部についてサーバーへのXHRを作成し、それをメッセージとしてメインアプリケーションに送信し、それが完了するまでこれを何度も繰り返すワーカー(またはいくつか)を作成することをお勧めします。すべてのデータをロードしました。同時に、アプリケーションの主要部分がワーカーからのメッセージをリッスンし、メッセージに従ってDOMを更新します。これは、アプリケーションとWebワーカー間の通信が非同期であるため、Webサイトのフローをブロックせず、スクリプトが停止したことを示すメッセージは表示されません。
Webワーカーの詳細については、http://www.html5rocks.com/en/tutorials/workers/basics/を参照してください。