從 AppFabric 快取移轉至 Azure 角色中快取

更新日期: 2015年8月

Important重要事項
Microsoft 建議您讓所有新開發使用 Azure Redis 快取。如需選擇 Azure 快取服務的現行文件和指引,請參閱哪個 Azure 快取服務最適合我?

本主題描述如何從 Microsoft AppFabric 1.1 for Windows Server 移轉至 Microsoft Azure 快取。此類型的 快取 移轉可能在您將內部部署應用程式移動至 Azure 時發生。

AppFabric 支援使用您本身之伺服器以及網路基礎架構的內部部署快取叢集。移動至 Azure 有助於 AppFabric 將大部分功能和程式設計模型與 Microsoft Azure 快取 共用。

將您可進行快取的應用程式移轉至雲端之前,請先檢閱 AppFabric 和 Microsoft Azure 快取 之間的差異。如果您要求一項功能,例如貫穿式寫入,則 Microsoft Azure 快取 無法提供此項功能,您必須重新設計解決方案的該部份,以便順利移動至 Azure。

所有快取以及其相關的設定必須在可使用快取的 Azure 角色上重新建立。首先必須要分析 AppFabric 快取叢集,以便瞭解目前的內部部署設定。

  1. 在 AppFabric 快取叢集中,開啟 [快取管理 Windows PowerShell] 命令提示字元。

  2. 在無需任何參數的情況下執行 Get-Cache 命令。這樣會列出具名的快取。

  3. 針對每個列出的快取,執行 Get-CacheConfig 命令。將快取名稱視為引數,傳送給此命令。記錄每個快取的組態設定。以下是此輸出的範例。

    PS C:\Windows\system32> Get-CacheConfig TestCache
    
    CacheName                : TestCache
    TimeToLive               : 20 mins
    CacheType                : Partitioned
    Secondaries              : 0
    MinSecondaries           : 0
    IsExpirable              : True
    EvictionType             : None
    NotificationsEnabled     : True
    WriteBehindEnabled       : False
    WriteBehindInterval      : 300
    WriteBehindRetryInterval : 60
    WriteBehindRetryCount    : -1
    ReadThroughEnabled       : False
    ProviderType             :
    ProviderSettings         : {}
    
  4. 執行 Get-CacheHost 命令以查看快取叢集中的快取主機清單。

  5. 針對每個快取主機,執行 Get-CacheHostConfig 命令。傳送必要的引數、快取主機名稱以及快取連接埠 (通常為 22233)。記錄每個快取主機的 Size 參數。

  6. 為所有快取主機新增 Size 值,以決定快取叢集的整體大小。

Warning警告
不支援將 AppFabric 和 Azure SDK 安裝於相同的部署機器上。這些步驟是假設您使用個別的機器,或您已在安裝 Azure SDK 之前完全解除安裝 AppFabric。

在 Visual Studio 中建立一個雲端服務,或開啟一個現有的雲端服務。在雲端服務中新增一個 [快取背景工作角色]。如需詳細資訊,請參閱在專用角色中裝載角色中快取 (Azure 快取)。此角色會提供 快取 使用完整雲端服務的能力。下列步驟說明如何重新建立具名的快取。

  1. 在 Visual Studio 中,前往 [方案總管] 視窗。

  2. 在 [角色] 資料夾中,按兩下裝載 快取 的角色。

  3. 在 [角色屬性] 對話方塊中,選取 [快取] 索引標籤。

  4. 在 [具名快取設定] 下方,先修改預設快取以符合 AppFabric 快取叢集中預設快取的設定。接著,使用 [新增具名快取] 連結以新增您的解決方案所需的任何其他快取。以下螢幕擷取畫面顯示了數個設定好的具名快取。

    快取具名快取的屬性頁面
  5. 使用 以建立或重新使用儲存體帳戶。該帳戶應該用於 [快取] 索引標籤中的儲存體帳戶欄位,以便進行雲端部署。

以下表格會將 Get-CacheConfig 中的輸出與 快取 視窗中的設定相關聯。

 

Get-CacheConfig 設定 快取 視窗設定

CacheName

名稱

TimeToLive

存留時間 (分)

次要 (0, 1)

高可用性 (0 = 未選取, 1 = 已選取)

IsExpirable (True,False)

過期類型 (True = 絕對,False = 無)

EvictionType (無,LRU)

收回原則 (無,LRU)

NotificationsEnabled (True,False)

通知 (True = 已選取,False = 未選取)

note附註
任何未在此處列出的 AppFabric 快取 設定並未在 Microsoft Azure 快取 中支援。

可以透過瞭解虛擬機器大小和此角色執行的執行個體數目間的關係,來設定快取叢集大小。如需詳細資訊,請參閱Azure 角色中快取的容量規劃考量

最後的步驟是移動所有應用程式程式碼到雲端服務專案。請注意命名空間和大部份 API 仍維持相同。以下步驟提供需要 快取 的每個專案之移轉指引。

  1. 在 Visual Studio 專案中,先移除 AppFabric 組件中的所有參考。

  2. 接下來,備份 web.config 或 app.config 檔案的 dataCacheClient 區段。

  3. 從 web.config 或 app.config 檔案中移除 dataCacheClient 以及其他快取區段。

  4. 接下來,將專案準備好以使用 Microsoft Azure 快取。如需詳細資訊,請參閱作法:準備 Visual Studio 來使用 Azure 角色中快取

  5. 接下來,備份 web.config 或 app.config 檔案的 dataCacheClient 區段。請務必在這些區段中進行以下變更:

    • 在每個區段新增 autoDiscover 元素。identifier 屬性必須參考裝載 快取 的角色名稱。

      <autoDiscover isEnabled="true" identifier="[cache cluster role name]" />
      
    • 移除所有 hostshost 以及 securityProperties 元素。Microsoft Azure 快取 中並沒有也不支援。

另請參閱

顯示: