啟用快取的貫穿式讀取 (read-through) 和事後寫入 (write-behind) 功能 (AppFabric 1.1 快取)

在快取上啟用 Microsoft AppFabric 1.1 for Windows Server 快取 貫穿式讀取 (read-through)/事後寫入 (write-behind) 提供者之前,您必須先完成下列兩個步驟:

  1. 延伸 DataCacheStoreProvider 類別 (AppFabric 1.1 快取)

  2. 部署貫穿式讀取 (read-through)/事後寫入 (write-behind) 提供者 (AppFabric 1.1 快取)

完成這兩個步驟後,您就可以在快取上啟用提供者。

使用 Windows PowerShell 啟用提供者

您可以使用 Windows PowerShell 命令 New-CacheSet-CacheConfig,讓提供者與快取產生關聯。這些命令支援下列參數,以設定貫穿式讀取 (read-through)/事後寫入 (write-behind) 提供者。

 

參數 類型 說明

ProviderType

string

提供者組件類型的完整格式名稱。此提供者會實作事後寫入 (write-behind) 和貫穿式讀取 (read-through) 功能。名稱會區分大小寫。

ProviderSettings

hashtable

一或多個金鑰/值配對,可指定提供者的組態設定 (如連線資訊)。

ReadThroughEnabled

string

使用這個參數啟用貫穿式讀取 (read-through) 功能。預設會設為 false。

WriteBehindEnabled

string

使用這個參數啟用事後寫入 (write-behind) 功能。預設會設為 false。

WriteBehindInterval

integer

快取項目在寫入至快取的多久時間 (秒數) 後應寫入至提供者。

WriteBehindRetryCount

integer

重試連線至事後寫入 (write-behind) 提供者的最大次數。(值為 -1 會不停重試)。

WriteBehindRetryInterval

integer

當連線至事後寫入 (write-behind) 提供者失敗時,每次重試之間等候的間隔 (秒)。

請注意,若使用 refreshNow 參數,則 Set-CacheConfig 不會因為這些提供者變更而要求停止快取叢集。但對於要求先停止快取叢集的其他快取組態設定變更,則不在適用範圍。

ProviderType 參數會使用實作提供者之類別的完整名稱。想要找出組件完整名稱的其中一個方法是,使用 gacutil.exe 工具搜尋全域組件快取中的登錄組件。範例如下。

gacutil.exe /l RTProvider

這會傳回全域組件快取中之組件的完整名稱,如下所示:

RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0, processorArchitecture=MSIL

您只需要在此名稱後附加合格的類別名稱即可。例如,如果類別名稱為 Provider,則此範例中的 ProviderType 參數會設為下列字串。

RTProvider.Provider, RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0

請注意,ProviderSettings 參數會設為提供者專用的一或多個金鑰/值配對。只有在提供者要求這些設定值時,此參數才為必要。

範例

下列範例會建立新快取 Cache1,這個快取使用提供者 RTProvider 來啟用貫穿式讀取 (read-through)/事後寫入 (write-behind) 功能。

New-Cache Cache1 -ReadThroughEnabled true -WriteBehindEnabled true -WriteBehindInterval 60 -ProviderType "RTProvider.Provider, RTProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80e2cb5f6ba933f0" -ProviderSettings @{"setting1"="value1";"setting2"="value2"}

請注意,ProviderSettings 參數會在 Windows Powershell 用於指定 Hashtable 的語法中傳入兩個金鑰/值配對設定值。

其他考量

  • 如果在啟用提供者時發生錯誤,原因可能是未成功登錄提供者。請確認已在所有快取主機登錄提供者,而且已正確指定完整名稱。

  • 如果您在每個快取主機上更新全域組件快取中的 DLL,則必須等到使用 Restart-CacheClusterStart-CacheHost Windows PowerShell 命令重新啟動快取服務後,快取叢集才會使用更新的 DLL 版本。

  • DataCacheItem 物件以序列化形式儲存在快取叢集中。如果提供者必須將儲存在 DataCacheItem 中的資料還原序列化,則與這些序列化物件相關聯的組件也必須位於快取主機的全域組件快取中。

另請參閱

  2012-03-05
顯示: