免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
EnterpriseLibrary之Caching
  微軟發(fā)布的EnterparseLibrary提供了許多功能,為我們的應(yīng)用程序提供了許多方便,有緩存、配置、異常、數(shù)據(jù)訪問、加密、日志等組件。項目中需要用到的Cache功能,便采用了EnterpriseLibrary的Cache組件。下面淺談一下Cache的實用范圍、用法及注意事項。

        應(yīng)用系統(tǒng)為了提升效率,可以將一些配置信息等不常改變的數(shù)據(jù)進行緩存以減少對數(shù)據(jù)源的讀取頻率。通常的做法是在程序中使用靜態(tài)變量來存儲,再設(shè)置一個Timer,每隔一段時間對數(shù)據(jù)進行更新等操作。EnterpriseLibrary的Cache提供了非常強大的支持,可以設(shè)置絕對時間、間隔時間、自定義格式以及文件過期時間來進行相應(yīng)的更新操作。

        1. 絕對時間過期的緩存:AbsoluteTime

        2. 相對時間過期的緩存:SlidingTime

        3. 自定義格式過期的緩存:ExtendedFormatTime

           自定義格式為:<Minute> <Hour> <Day of month> <Month> <Day of week>

           Minute            0-59
           Hour              0-23
           Day of month     1-31
           Month             1-12
           Day of week       0-6 (Sunday is 0)
           如:
           * * * * *    - expires every minute
           5 * * * *    - expire 5th minute of every hour
           * 21 * * *   - expire every minute of the 21st hour of every day
           31 15 * * *  - expire 3:31 PM every day
           7 4 * * 6    - expire Saturday 4:07 AM

        4. 文件的過期緩存:FileDependency

        簡單的程序代碼如下:

        CacheManager cacheManager = CacheFactory.GetCacheManager();

        ExtendedFormatTime expireTime = new ExtendedFormatTime("41 11 * * *");
        cacheManager.Add("key", value, CacheItemPriority.Normal, new ProductCacheRefreshAction(), expireTime);

        上述代碼即將value放入到以key為鍵值的默認換成塊中,且在每天的11點41分緩存中的值失效,需要重新讀取數(shù)據(jù)源。

        Cache以配置文件的方式供用戶進行緩存的輪詢過期數(shù)據(jù)的頻率、緩存中數(shù)據(jù)項的多少、清除數(shù)據(jù)項的多少以及緩存?zhèn)浞莸奈恢谩?/p>

 1.    expirationPollFrequencyInSeconds: 設(shè)置控制后臺調(diào)度程序多久檢查過期條目的定時器。此屬性必須是正整數(shù),且是必要的。
 2.    maximumElementsInCacheBeforeScavenging: 設(shè)置在清除開始前可以在緩存中的條目的最大數(shù)量。此屬性必須是正整數(shù),且是必要的。
 3.    numberToRemoveWhenScavenging: 設(shè)置在清除開始時移除的條目的數(shù)量,此屬性必須是正整數(shù),且是必要的。
 4.    backingStoreName: 緩存?zhèn)浞莸奈恢?

        值得一提的是,expirationPollFrequencyInSeconds屬性是控制后臺調(diào)度程序多久檢查過期條目的配置,單位為秒,如果系統(tǒng)經(jīng)常需要更新數(shù)據(jù)則可以將此值設(shè)置的小一點;ICacheItemExpiration的時間是以UTC的時間來作為標(biāo)準(zhǔn)時間來比較的,北京時間比UTC早8個小時,比如你需要在每天的十二點半讓緩存過期,則必須這樣設(shè)置ExtendedFormatTime("30 4 * * *"), 關(guān)于這個問題我本來不知道,以為是Library的Bug,上網(wǎng)也沒有找到相關(guān)的例子,最后在看了原程序才知道Library是用的UTC來進行比較的。


本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Enterprise Library 4.1學(xué)習(xí)筆記4----緩存應(yīng)用程序塊 - 菩提樹下的楊過.Net - 博客園
EhCache介紹
Microsoft Enterprise Library 5.0 系列教程(一) : Caching Application Block (初級)
EHCache技術(shù)文檔
Encache 緩存介紹
我的shiro之旅: 九 shiro 清理緩存的權(quán)限信息
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服