1

私のサイトは、Subsonic を使用して ASP.NET MVC3 で記述されており、データベースに約 30k のレコードがあります。すべてのデータベースをキャッシュしました。基本的に私はこれに似た機能を持っています:

public ActionResult UpdateItem(string json, string key)
{
    if(Setting.Get("SafeMode").To<bool>()) return;
    GC.Collect();
    GC.WaitForPendingFinalizers();
    GC.Collect();
    GC.WaitForPendingFinalizers();
    var model = ntwgObject.ntwgSerialization.JsonDeserialize<Model.ProductResult>(HttpUtility.UrlDecode(json));
    Product p = Product.Get(model.Id);//This method get product by id
    if (p == null)
    {
      p = new Product(){ Name = ".."};
    }
    p.LastUpdate = DateTime.Now
    p.Save();
}

HttpWebRequest上記の UpdateItem コントローラーにデータを投稿するために使用したソフトウェアがあります。1 秒あたり約 1 ~ 2 件のリクエストがあります。しかし、サイトの読み込みが遅すぎます。私が開く"SafeMode" (Setting.Get("SafeMode").To<bool>() = True)と、サイトの読み込みが速くなります。

これは奇妙です。HttpWebRequestオブジェクト経由のリクエストが少ないと、サイトの読み込みが遅くなるのだろうか?何らかの理由で GC.Collect() メソッドを使用しました。多分これも問題ですか?

4

0 に答える 0