私はオンラインのニュースポータルを構築しましたが、その前に私にとってうまくいきましたが、ホームページの速度が少し遅いと言う人もいます。私がそれを考えるとき、私はそれが理由であると思う。データアクセスASP.NET
サイトのホームページが表示さ
- 見出し
- スポットニュースのタイトルとして(サブヘッドライン写真と
- スポット
- ほとんど読んでニュースを()
- ほとんどのコメントニュース(
- 各ニュースカテゴリから5つのニュースタイトル(スポーツ、経済、地方、健康など合計11件) など。)
ここで、これらのそれぞれは、dbに対する個別のクエリです。私はテーブル・データセットとデータ・セット(標準データ・アクセス・シナリオ)を持っているので、テーブル・アダプターによってデータ・テーブルを返すニュース・クラスのビジネス・ロジックを呼び出します。そこから、データテーブルをコントロールにバインドするだけで使うことができます。あるいは、オブジェクトはニュースのリストに変換して、そこから消費します。
上記のそれぞれに対してこれを行うと、うまくいくようです。少なくともそれは大きな負荷をかけません。しかし、より良い方法があるのかどうか疑問に思います。
たとえば、私が上で説明したプロジェクトは非常に動的なウェブサイトであり、ニュースは代理店から24時間ノンストップで到着すると挿入されます。この場合のキャッシングは良いとは思わないかもしれません。一方で、私は地元の新聞のための別の同様のプロジェクトを知っています。サイトは1日1回更新されます。この場合、 今日のために挿入されたすべてのニュースアイテムを含むデータテーブルを返し、そのデータテーブルをクエリし、見出し、スポット、およびその他のアイテムをサイトのそれぞれの場所に配置できるクエリを1つだけ実行できますか?それとももっと良い選択肢がありますか?私は、他の人が最も効率的な方法で同様の作業をどのように実行しているのか見逃しています。
+ 1クライアント側のプロファイリングにFirebugとYSlowを使用する場合+1。 – Anthony