国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Spring Framework 參考文檔(理解緩存抽象)

0xE7A38A / 2519人閱讀

摘要:理解緩存抽象緩存與緩沖區術語緩沖區和緩存往往可以互換使用,但是請注意,它們代表不同的東西。這個抽象是由和接口實現。要使用緩存抽象,你需要考慮兩個方面緩存聲明標識需要緩存的方法及其策略。緩存配置存儲數據并從中讀取數據的后備緩存。

理解緩存抽象
緩存與緩沖區

術語“緩沖區”和“緩存”往往可以互換使用,但是請注意,它們代表不同的東西。傳統上,緩沖區用作數據在快實體和慢實體之間的中間臨時存儲,由于一方必須等待另一方(這會影響性能),緩沖區允許整個數據塊(而不是小塊)同時移動,從而緩解了這種情況。數據只從緩沖區寫入和讀取一次,此外,至少有一方知道緩沖區是可見的。

另一方面,緩存根據定義是隱藏的,并且任何一方都不知道緩存的發生,它還提高了性能,但是通過讓相同的數據以快速方式多次讀取來提高性能。

你可以在這里找到關于緩沖區和緩存之間差異的進一步解釋。

緩存抽象的核心是將緩存應用于Java方法,從而根據緩存中可用的信息減少執行的次數,也就是說,每次調用目標方法時,抽象都會應用緩存行為,檢查給定參數的方法是否已經執行。如果已執行,則返回緩存的結果,而不必執行實際的方法,如果方法尚未執行,則執行該方法,并緩存結果并返回給用戶,以便在下次調用該方法時返回緩存的結果。這樣,對于給定的一組參數,昂貴的方法(無論是CPU綁定的還是IO綁定的)只能執行一次,并且結果可以重用,而不必實際再次執行該方法,緩存邏輯被透明地應用,沒有任何對調用程序的干擾。

這種方法只適用于保證為給定輸入(或參數)返回相同輸出(結果)的方法,無論執行了多少次。

緩存抽象提供了其他與緩存相關的操作,比如更新緩存內容或刪除一個或所有條目的能力,如果緩存處理的數據在應用程序運行過程中可能發生更改,那么這些方法非常有用。

與其他在Spring Framework中的服務,緩存服務是一個抽象(不是緩存實現),需要使用實際的存儲來存儲緩存數據 — 也就是說,抽象使你不必寫緩存邏輯但不提供實際的數據存儲。這個抽象是由org.springframework.cache.Cacheorg.springframework.cache.CacheManager接口實現。

Spring提供了該抽象的一些實現:JDK 基于緩存的java.util.concurrent.ConcurrentMap、Ehcache 2.x、Gemfire緩存、Caffeine和JSR-107兼容緩存(例如Ehcache 3.x)。

緩存抽象對多線程和多進程環境沒有特殊的處理,因為這些特性是由緩存實現來處理的。

如果你有一個多進程環境(即部署在多個節點上的應用程序),則需要相應地配置緩存提供程序,根據你的用例,在多個節點上復制相同的數據就足夠了,但是,如果在應用程序過程中更改數據,則可能需要啟用其他傳播機制。

緩存特定的項與通過編程緩存交互找到的典型get-if-not-found-then- proceed-and-put-eventually代碼塊是直接等價的,沒有應用鎖,幾個線程可能試圖同時加載相同的項,這同樣適用于驅逐。如果多個線程試圖同時更新或驅逐數據,則可以使用陳舊數據,某些緩存提供程序在該領域提供高級特性,有關詳細信息,請參閱緩存提供程序的文檔。

要使用緩存抽象,你需要考慮兩個方面:

緩存聲明:標識需要緩存的方法及其策略。

緩存配置:存儲數據并從中讀取數據的后備緩存。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76065.html

相關文章

  • Spring Framework 參考文檔(JCache(JSR-107)注解)

    摘要:注解從版開始,的緩存抽象完全支持標準注解和以及和。使用方法調用的結果更新緩存,要求將其作為使用注解的參數傳遞給它由于這種差異,允許在實際方法調用之前或之后更新緩存。非常相似,當方法調用導致異常時,支持條件驅逐。 JCache(JSR-107)注解 從4.1版開始,Spring的緩存抽象完全支持JCache標準注解:@CacheResult、@CachePut、@CacheRemove和...

    fengxiuping 評論0 收藏0
  • Spring Framework 參考文檔(聲明式基于注解的緩存

    摘要:聲明式基于注解的緩存對于緩存聲明,的緩存抽象提供了一組注解觸發緩存人口。重新組合要應用于方法的多個緩存操作。雖然在大多數情況下,只聲明一個緩存,但是注解允許指定多個名稱,以便使用多個緩存。 聲明式基于注解的緩存 對于緩存聲明,Spring的緩存抽象提供了一組Java注解: @Cacheable:觸發緩存人口。 @CacheEvict:觸發緩存驅逐。 @CachePut:在不影響...

    makeFoxPlay 評論0 收藏0
  • Spring Framework 參考文檔(容器概述)

    摘要:容器概述接口表示容器,負責實例化配置和組裝。基于的元數據不是惟一允許的配置元數據形式,容器本身與實際編寫配置元數據的格式完全解耦,現在,許多開發人員為他們的應用程序選擇基于的配置。 容器概述 org.springframework.context.ApplicationContext接口表示Spring IoC容器,負責實例化、配置和組裝bean。容器通過讀取配置元數據獲取關于要實例化...

    huashiou 評論0 收藏0
  • Spring之旅第二站:bean、新特性。。。

    摘要:除了,還簡單介紹了對的支持,可以幫助應用將散落在各處的邏輯匯集于一處切面。當裝配的時候,這些切面能夠運行期編織起來,這樣就能呢個非常有效的賦予新功能。 第1章 Spring之旅 說明 1、本文參考了《Spring 實戰》重點內容,參考了GitHub上的代碼 2、每個人的學習方式不一樣,但目的是一樣的,活學活用。最近一直在聽《我們不一樣》 3、本文只為記錄作為以后參考,要想真正領悟Sp...

    luodongseu 評論0 收藏0
  • Spring Framework 參考文檔(概述)

    摘要:除此之外,還為不同的應用程序體系結構提供了基礎支持,包括消息傳遞事務數據和持久性以及,它還包括基于的框架,以及與之并行的反應性框架。還支持依賴項注入和公共注解規范,應用程序開發人員可以選擇使用這些規范,而不是提供的特定于的機制。 概述 Spring使創建Java企業應用程序變得很容易,它提供了在企業環境中使用Java語言所需要的一切,支持Groovy和Kotlin作為JVM上的替代語言...

    silencezwm 評論0 收藏0

發表評論

0條評論

0xE7A38A

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<