2008-08-26 25 views
3

非常に広い地理データを表示するWebアプリケーションを設計することになります。また、要件の1つは、私の国の郊外にある一般的なダイヤルアップにPCをそのまま使用できるように、最適化する必要があるということです。低帯域幅用に最適化

これで、限られた開発時間とユーザーエクスペリエンスに役立つ場合は、Flashおよび/またはSilverlightを使用することができます。

地理データの重い部分はタイルにチャンクされ、Googleマップでマップタイルのように読み込まれますが、これはたくさんのHTTPリクエストが必要であることを意味します。

私はちょうどjavascript + HTMLと一緒に行くべきですか? Flash/Silverlightに関するより速いアプリケーションで終わるだろうか?私はこれらの2つの技術(DeepZoomのような)でいくつかの複雑なアルゴリズムを行うことができます。デスクトップアプリケーションを導入することは、それほど多くのメンテナンス資金を必要としないため、問題にはなりません。

ちょうど速く...本当に速い必要があります。

p.s.より速く「速くダウンロードする」という意味になります

答えて

1

私はあなたがFlashを見つけたり、Silverlightがこのアプリケーションのためにあまりにも助けになるとは思いません。どちらの方法でも、タイル画像を利用することになり、画像は両方のシナリオで同じサイズになります。 FlashやSilverlightを使用すると、アプリケーションにきちんとしたアニメーションを追加することができますが、ここで得られるものはダイアルアップ接続でクライアントに付加的なオーバーヘッドになります。私はプレーンなJavascript/HTMLに固執します。

2

Gearsは受け入れ可能ですか?これにより、データをローカルに格納して再要求を制限することができます。

私もフラッシュとSilverlightから離れ、javascript/AJAXにまっすぐに行きます。 jQueryはトーン・オー・ファンです。

2

私はあなたが私がMicrosoftのSeadragonは、あなたの答えであると信じてシルバーに見て、DeepZoom

0

お勧めします。しかし、それが開発者に利用可能かどうかはわかりません。

それのいくつかは、あなたはまた、非同期で利用できるAjaxライブラリのうちの1つを介して、あなたのタイルをダウンロードを見てみたいことがありシルバー

1

にその方法を発見したように見えます。あなたのユーザーが一度に9タイルを表示し、スクロール/ズームできるとします。あなたが見ることができるそれらの9タイルと、最初の負荷でタイルのズームを処理するために必要なものをダウンロードしてください。他の情報を非同期にプリフェッチするためのキャッシュ戦略を試してみる必要があります。

ルールエンジンを使用していた場所では、結果を返すのに時間がかかりすぎて、ユーザーに「この確認」画面を表示することを選択しました。ユーザーが確認するのに数秒かかり、次をクリックすると結果を返すのに十分な時間がかかりました。それは実際にはもう少し時間がかかったときに、アプリをユーザーに素早く見せるようにしました。実際のパフォーマンスと同じように、パフォーマンスのユーザー認識も重要であることを覚えておく必要があります。

関連する問題