この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13999|答える: 0

[ASP.NET] ASP.NET キャッシュ

[リンクをコピー]
掲載地 2015/06/17 11:27:42 | | |
ASP.NET、ASP.NET アプリケーションに情報をキャッシュするプログラミング機能を提供します。 この機能はアプリケーションオブジェクトに似ていますが、アプリケーションのライフ期間中、キャッシュ情報を動的に維持する能力 ASP.NET 備えています。 アプリケーション内でデータをキャッシュすることで、データはサーバーにローカル存在し、迅速に取得できるため、パフォーマンスを大幅に向上させます。 元のデータソースを再クエリする代わりに。 特に現行システムの最大のボトルネックはデータベースであり、キャッシュの合理的な活用は多くの不要なデータベースアクセスを減らし、システムのパフォーマンスを最適化できます。

      キャッシュオブジェクトは、管理アプリケーションの他のユーザーや ASP.NET 自身がキャッシュ内のキャッシュ項目に対してアクションを行えるようにする関連性ベースの有効期限通知やコールバック通知の実装能力を向上させます。 Cacheオブジェクトを使って、任意の型(値型やアプリケーション型)を更新または削除前に保存します。 キャッシュはアプリケーションオブジェクトよりも柔軟なオブジェクトです。 以下を支えています:

      1. 関連性ベースの期限切れおよび削除 - キャッシュオブジェクトは、キャッシュ値の自動期限切れと削除をファイルイベント、特定または相対的な日付・時刻、または他のキャッシュキーに割り当てる機能を提供します。

      2. 自動ロック管理 - キャッシュオブジェクトには内部ロック管理が含まれており、計算操作で挿入可能な原子更新(更新)の同期を提供します。

      3. コールバック機構 - キャッシュオブジェクトは、キャッシュアイテムを削除する際にコールバック関数を呼び出しる設定機能を提供します。



      キャッシュ追加メソッドにはAdd()またはInsert()が含まれ、Insertメソッドはオプションパラメータを使ってデフォルトパラメータの両方を使ってキャッシュを追加できます:

      Cache.Add(KeyName, KeyValue, Dependencies, AbsoluteExpiration, SlidingExpiration, Priority, CacheItemRemoveCallback);

      パラメータは、キャッシュ名、キャッシュされたオブジェクト、依存関係、絶対有効期限、相対有効期限、優先度、そしてキャッシュの有効期限によって引き起こされるイベントです。



      キャッシュ依存関係:ファイル依存関係、その他のキャッシュ依存関係、データベース依存関係、有効期限メソッドを設定し、依存関係が変更されるとキャッシュは無効となり、特定のイベントを発生させることがあります。

      1. ファイル依存関係:xmlファイルへのキャッシュ依存:


  1. <p>DataSet dsProducts = new DataSet();</p><p>//...dsProducts数y据Y</p><p>CacheDependency fileDepends = new CacheDependency(Server.MapPath("Northwind.xml"));</p><p>Cache.Insert("dsProducts", dsProducts, fileDepends);</p>
コードをコピーします


      2. その他のキャッシュアイテム依存関係:

  1. <p>object cacheData;</p><p>string[] fileDependsArray = { Server.MapPath("Northwind.xml") };</p><p>string[] cacheDependsArray = { "Depend0", "Depend1", "Depend2" };</p><p>CacheDependency cacheDepends = new CacheDependency(fileDependsArray, cacheDependsArray);</p><p>Cache.Insert("cacheName", cacheData, cacheDepends);</p>
コードをコピーします


         3. 有効期限の設定:

         AbsoluteExpirationはキャッシュの絶対有効期限を設定でき、例えば30分後に有効期限に設定することができます。


  1. Cache.Insert("cacheName ", "cacheValue", null, DateTime.Now.AddMinutes(30), Cache.NoSlidingExpiration);
コードをコピーします

          NoSlidingExpirationは相対的な有効期限を設定することができ、NoSlidingExpirationが設定した時間内にキャッシュにアクセスできない場合、キャッシュが期限切れで一定期間アクセスされなければ、キャッシュは有効期限にならない。 30分以内にキャッシュにアクセスした場合、期限切れはありません:


  1. Cache.Insert("cacheName", "cacheValue", null, Cache.NoAbsoluteExpiration, TimeSpan.FromSeconds(30));
コードをコピーします






先の:インスタンス参照を使ってメンバー「System.Web.Caching.Cache.NoAbsoluteExpiration」にアクセスできません。 ...
次に:テキストメッセージやQQメッセージで、地元の暴君の友人のiPhoneが即座にクラッシュし、シャットダウンし、フリーズします!
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com