快速入門:在 Python 中使用 Azure Cache for Redis
在本文中,您會將 Azure Cache for Redis 納入 Python 應用程式中,以便存取可從 Azure 內任何應用程式存取的安全、專用快取。
跳至 GitHub 上的程式碼
如果要直接跳到程式碼,請參閱 GitHub 上的 Python 快速入門。
必要條件
- Azure 訂用帳戶 - 建立免費帳戶
- Python 3
- 若為 macOS 或 Linux,請從 python.org 下載。
- 若為 Windows 11,請使用 Windows Store。
建立 Azure Cache for Redis 執行個體
若要建立快取,請登入 Azure 入口網站,然後選取 [建立資源]。
在 [ 開始使用] 頁面上,於搜尋方塊中輸入 Azure Cache for Redis 。 然後,選取 [建立]。
在 [ 新增 Redis 快 取] 頁面上,設定快取的設定。
設定 選擇值 描述 訂用帳戶 下拉並選取您的訂用帳戶。 這個新的 Azure Cache for Redis 執行個體建立所在的訂用帳戶。 資源群組 下拉並選取資源群組,或選取 [新建] 並輸入新的資源群組名稱。 用來建立快取和其他資源的資源群組名稱。 將所有的應用程式資源放在一個資源群組中,您將可輕鬆地一併管理或刪除這些資源。 DNS 名稱 輸入唯一名稱。 快取名稱必須為介於 1 到 63 個字元之間的字串,而且只能包含數字、字母或連字號。 名稱的開頭和結尾必須是數字或字母,且不可包含連續的連字號。 快取執行個體的「主機名稱」為 <DNS 名稱>.redis.cache.windows.net。 地點 下拉並選取位置。 選取一個區域,其靠近其他要使用您快取的服務。 快取 SKU 下拉式清單並選取 SKU。 SKU 會決定快取可用的大小、效能和功能參數。 如需詳細資訊,請參閱 Azure Cache for Redis 概觀。 快取大小 下拉式清單並選取快取的大小 如需詳細資訊,請參閱 Azure Cache for Redis 概觀。 選取 [網路] 索引標籤,或選取頁面底部的 [網路] 按鈕。
在 [網路功能] 索引標籤中,選取您的連線方法。
選取 [下一步: 進階] 索引標籤,或選取頁面底部的 [下一步: 進階] 按鈕以查看 [進階] 索引標籤。
- 針對基本或標準快取,切換適用於非 TLS 連接埠的選取項目。 您也可以選取是否要啟用 Microsoft Entra 驗證。
- 針對進階快取,設定適用於非 TLS 連接埠、叢集、受控識別和資料持續性的設定。 您也可以選取是否要啟用 Microsoft Entra 驗證。
選取 [下一步: 標記] 索引標籤,或選取頁面底部的 [下一步: 標記] 按鈕。
在 [標記] 索引標籤中,如果您想要分類資源,可以選擇性地輸入名稱和值。
選取 [檢閱 + 建立]。 您會移至 [檢閱 + 建立] 索引標籤,其中 Azure 會驗證您的設定。
出現綠色的「通過驗證」訊息之後,請選取 [建立]。
建立快取需要一些時間。 您可以在 Azure Cache for Redis 的 [概觀] 頁面上監視進度。 當 [狀態] 顯示為 [執行中] 時,表示快取已可供使用。
從 Azure 入口網站擷取主機名稱、連接埠和存取金鑰
若要連線 Azure Cache for Redis 伺服器,快取用戶端需要快取的主機名稱、連接埠和金鑰。 某些用戶端可能會以稍有不同的名稱來參考這些項目。 您可以從 Azure 入口網站取得主機名稱、連接埠和金鑰。
若要取得存取金鑰,請從 [資源] 功能選取 [ 驗證 ]。 然後,選取 [ 存取金鑰] 索引標籤 。
若要取得快取的主機名和埠,請從 [資源] 功能表中選取 [概觀 ]。 主機名稱的格式為 <DNS 名稱>.redis.cache.windows.net。
安裝 redis-py
redis-py \(英文\) 是 Azure Cache for Redis 的 Python 介面。 使用 Python 套件工具 pip
,從命令提示字元安裝 redis-py
套件。
下列範例使用 Python 3 的 pip3
,在 Windows 10 上,從系統管理員命令提示字元安裝 redis-py
。
讀取和寫入快取
從命令列中執行 Python,然後使用下列程式碼來測試您的快取。 將 <Your Host Name>
和 <Your Access Key>
取代為您 Azure Cache for Redis 執行個體的值。 您的主機名稱格式為 <DNS name>.redis.cache.windows.net
。
>>> import redis
>>> r = redis.StrictRedis(host='<Your Host Name>',
port=6380, db=0, password='<Your Access Key>', ssl=True)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
b'bar'
重要
如果是 Azure Cache for Redis 3.0 版或更新版本,即會強制執行 TLS/SSL 憑證檢查。 連線至 Azure Cache for Redis 時,必須明確設定 ssl_ca_certs
。 若為 RedHat Linux,ssl_ca_certs
位於 /etc/pki/tls/certs/ca-bundle.crt
憑證模組中。
建立 Python 範例應用程式
建立新的文字檔、新增下列指令碼,然後將檔案儲存為 PythonApplication1.py
。 將 <Your Host Name>
和 <Your Access Key>
取代為您 Azure Cache for Redis 執行個體的值。 您的主機名稱格式為 <DNS name>.redis.cache.windows.net
。
import redis
myHostname = "<Your Host Name>"
myPassword = "<Your Access Key>"
r = redis.StrictRedis(host=myHostname, port=6380,
password=myPassword, ssl=True)
result = r.ping()
print("Ping returned : " + str(result))
result = r.set("Message", "Hello!, The cache is working with Python!")
print("SET Message returned : " + str(result))
result = r.get("Message")
print("GET Message returned : " + result.decode("utf-8"))
result = r.client_list()
print("CLIENT LIST returned : ")
for c in result:
print(f"id : {c['id']}, addr : {c['addr']}")
使用 Python 執行 PythonApplication1.py
。 您應該會看到類似下列範例的結果:
清除資源
如果您已完成此快速入門中所建立的 Azure 資源群組和資源,則您可刪除它們以避免衍生費用。
重要
刪除資源群組是無法回復的動作,而資源群組及其中的所有資源都會永久刪除。 如果您在想要保留的現有資源群組中建立了 Azure Cache for Redis 執行個體,您可從快取的 [概觀] 頁面中選取 [刪除],只刪除快取。
刪除資源群組及其 Azure 執行個體的 Redis 快取:
從 Azure 入口網站中,搜尋並選取 [資源群組]。
在 [依名稱篩選] 文字方塊中,輸入包含您快取執行個體的資源群組名稱,然後從搜尋結果中選取它。
在資源群組頁面上,選取 [刪除資源群組]。
輸入資源群組名稱,然後選取 [刪除]。