4

Ajax が Web アプリをデスクトップ アプリのように機能させる方法は本当に気に入っていますが、大量のサイトでのヒット数が心配です。私は現在、イントラネット ベースのデータベース アプリを開発しています。一度に 2 ~ 4 人しかアクセスできません。私は思いっきりAjaxしていますが、Ajaxはどれだけ多すぎるのだろうかと思いました。

ヒット数が Ajax を使用することで得られるメリットを上回るのはどの時点ですか? 理論的には、更新が必要な部分のみを更新しているため、ページ全体の更新と比較して、実際にはそうなるようには見えません。

大量のサイトで Ajax を使用したことがある人がいるかどうか、またそれをどのような用途で使用したか知りたいです。スケーリングの問題が発生しますか?

4

5 に答える 5

2

私の現在のプロジェクトでは、Ajax を使用していますが、スケーリングの問題がありました。私の現在のプロジェクトは、大都市の従業員のためにタイムキーピングを行う J2EE サイトであるため、ユーザー セッションの間は変更されないデータをブラウザー側でキャッシュできることが最善であることがわかりました。幸いなことに、1 人の管理者ができるだけ多くの従業員の計時を処理するモデルに移行しています。これは、ERP アプリケーション (または電子メール アプリケーション) がどのように機能するかに似ています。したがって、私たちのビジネス ニーズは、ブラウザ側が大量のデータを保持できることですが、ヒット数が深刻な問題になるとは考えていません。そのため、ブラウザ側に XML データ アイランドを保持しています。さらに、必要に応じてのみデータをロードします。

本Ajax Design Patternsまたはそのサイトを強くお勧めします。

于 2008-12-01T03:46:18.957 に答える
2

あなたが言ったように、更新が必要な部分だけを更新しているので、それがあなたの懸念である場合、Ajaxは大量のサイトで帯域幅を支援するはずです。Ajax に関する私の問題は、訪問者が JavaScript を有効にしていない場合、サイトが役に立たなくなる可能性があることです。ほとんどの場合、JavaScript を使用しないユーザーのためにサイトを再度コーディングする必要はありません。

于 2008-12-01T03:46:55.947 に答える
2

このように考えてみてください: !script の可能性があるため、AJAX が唯一の選択肢であってはなりません。いくつかの点で優れたエクスペリエンスを提供するために、AJAX は既存のアーキテクチャの上にレイヤーとして存在する必要があります。それを考えると、AJAXはまったく同じデータ転送を処理しているため、単純な HTML よりも多くの要求や作業を作成することは不可能です。

帯域幅とサーバーの負荷を節約できるのは、AJAX がデータのみを転送する機能を提供するためです。ページを更新するたびに余分な HTML、画像、CSS などのリクエストを節約しながら、より快適なユーザー エクスペリエンスを提供できます。

mike nvck が指摘しているように、ポーリングの手法はこのルールの大きな例外ですが、それは技術ではなく手法に関するものです。単純なページ ポーリングがあれば、同じような影響があります。

ツールを理解し、設計どおりに使用してください。AJAX の実装によってパフォーマンスが低下している場合は、何か問題があります。

(fwiw、AJAX と単純な HTML のプロファイリングの私の経験では、帯域幅が最大 60%、パフォーマンスが最大 80 ~ 90% 向上する傾向があります)

于 2008-12-01T10:30:53.757 に答える
1

Ajax アプリのスケーリングに関する最も一般的な問題は、ユーザーが積極的にリクエストすることなく、その間にコンテンツが更新されたかどうかをサーバーに確認するように設定する場合です。5 クライアントが 10 秒ごとにチェックすることは、5000 クライアントが 10 秒ごとにチェックすることではありません。

于 2008-12-01T09:41:11.177 に答える
1

Ajax は、通常、ページの一部のみを表示または更新するため、サーバーの負荷を軽減しますが、サーバーへのヒット数を増加させます。すべては、Web アプリケーションのアーキテクチャに依存していると言えます。応答のサイズに関係なく、アプリケーションが (データベース アクセスなどの) ヒットごとに大量の処理を必要とする場合、Ajax は大量にヒットします。

于 2008-12-01T10:03:06.577 に答える