快速入門:在 Java 中使用 Azure Cache for Redis
在本快速入門中,您會使用 Jedis Redis 用戶端,將 Azure Cache for Redis 納入 Java 應用程式。 您的快取可從 Azure 的任何應用程式存取,是安全的專用快取。
跳至 GitHub 上的程式碼
複製 GitHub 上的 Java 快速入門存放庫。
必要條件
- Azure 訂用帳戶 - 建立免費帳戶
- Apache Maven
建立 Azure Cache for Redis
若要建立快取,請登入 Azure 入口網站,然後選取 [建立資源]。
在 [開始] 頁面上,於搜尋方塊中輸入 [Azure Cache for Redis]。 然後,選取 [建立]。
在 [新 Azure Cache for 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 驗證。
重要
為了實現最佳安全性,Microsoft 建議盡可能使用具有受控識別的 Microsoft Entra ID 來授權針對快取的請求。 相較於共用金鑰授權,使用 Microsoft Entra ID 和受控識別來授權可提供更優異的安全性,也更容易使用。 如需搭配快取使用受控識別的詳細資訊,請參閱使用 Microsoft Entra ID 進行快取驗證。
選取 [下一步: 標記] 索引標籤,或選取頁面底部的 [下一步: 標記] 按鈕。
在 [標記] 索引標籤中,如果您想要分類資源,可以選擇性地輸入名稱和值。
選取 [檢閱 + 建立]。 您會移至 [檢閱 + 建立] 索引標籤,其中 Azure 會驗證您的設定。
出現綠色的「通過驗證」訊息之後,請選取 [建立]。
建立快取需要一些時間。 您可以在 Azure Cache for Redis 的 [概觀] 頁面上監視進度。 當 [狀態] 顯示為 [執行中] 時,表示快取已可供使用。
從 Azure 入口網站擷取主機名稱、連接埠和存取金鑰
若要連線 Azure Cache for Redis 伺服器,快取用戶端需要快取的主機名稱、連接埠和金鑰。 某些用戶端可能會以稍有不同的名稱來參考這些項目。 您可以從 Azure 入口網站取得主機名稱、連接埠和金鑰。
若要取得存取金鑰,請從 [資源] 功能表中選取 [驗證]。 然後,選取 [存取金鑰] 索引標籤。
若要取得快取的主機名稱和連接埠,請從 [資源] 功能表選取 [概觀]。 主機名稱的格式為 <DNS 名稱>.redis.cache.windows.net。
設定工作環境
根據您的作業系統,針對主機名稱和主要存取金鑰新增環境變數。 開啟命令提示字元或終端機視窗,然後設定下列值:
export REDISCACHEHOSTNAME=<your-host-name>.redis.cache.windows.net
export REDISCACHEKEY=<your-primary-access-key>
以下列值取代預留位置:
<your-host-name>
:在 Azure 入口網站中,從 Azure Cache for Redis 資源的「屬性」區段取得的 DNS 主機名稱。<your-primary-access-key>
:在 Azure 入口網站中,從 Azure Cache for Redis 資源的「存取金鑰」區段取得的主要存取金鑰。
了解 Java 範例
在此範例中,您會使用 Maven 執行快速入門應用程式。
變更為新的 redistest 專案目錄。
開啟 pom.xml 檔案。 在此檔案中,您會看到 Jedis 的相依性:
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>4.1.0</version> <type>jar</type> <scope>compile</scope> </dependency>
關閉 pom.xml 檔案。
開啟 App.java 檔案,並使用下列程式碼查看程式碼:
package example.demo; import redis.clients.jedis.DefaultJedisClientConfig; import redis.clients.jedis.Jedis; /** * Redis test * */ public class App { public static void main( String[] args ) { boolean useSsl = true; String cacheHostname = System.getenv("REDISCACHEHOSTNAME"); String cachekey = System.getenv("REDISCACHEKEY"); // Connect to the Azure Cache for Redis over the TLS/SSL port using the key. Jedis jedis = new Jedis(cacheHostname, 6380, DefaultJedisClientConfig.builder() .password(cachekey) .ssl(useSsl) .build()); // Perform cache operations using the cache connection object... // Simple PING command System.out.println( "\nCache Command : Ping" ); System.out.println( "Cache Response : " + jedis.ping()); // Simple get and put of integral data types into the cache System.out.println( "\nCache Command : GET Message" ); System.out.println( "Cache Response : " + jedis.get("Message")); System.out.println( "\nCache Command : SET Message" ); System.out.println( "Cache Response : " + jedis.set("Message", "Hello! The cache is working from Java!")); // Demonstrate "SET Message" executed as expected... System.out.println( "\nCache Command : GET Message" ); System.out.println( "Cache Response : " + jedis.get("Message")); // Get the client list, useful to see if connection list is growing... System.out.println( "\nCache Command : CLIENT LIST" ); System.out.println( "Cache Response : " + jedis.clientList()); jedis.close(); } }
此程式碼示範如何使用快取主機名稱和金鑰環境變數來連線至 Azure Cache for Redis 執行個體。 此程式碼也會將字串值儲存到快取中,以及擷取其中的字串值。
PING
和CLIENT LIST
命令也會執行。關閉 App.java。
建置並執行應用程式
首先,如果您未這麼做,請將環境變數設為上述設定。
執行下列 Maven 命令,以建置和執行應用程式:
在下列輸出中,您可以看到 Message
索引鍵先前有快取的值。 此值已使用 jedis.set
更新為新的值。 應用程式也已執行 PING
和 CLIENT LIST
命令。
Cache Command : Ping
Cache Response : PONG
Cache Command : GET Message
Cache Response : Hello! The cache is working from Java!
Cache Command : SET Message
Cache Response : OK
Cache Command : GET Message
Cache Response : Hello! The cache is working from Java!
Cache Command : CLIENT LIST
Cache Response : id=777430 addr= :58989 fd=22 name= age=1 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 ow=0 owmem=0 events=r cmd=client numops=6
清除資源
如果您要繼續使用快速入門程式碼,請保留並重複使用在本快速入門中建立的資源。
亦或您不再使用快速入門範例應用程式,請刪除本快速入門中建立的 Azure 資源,以免衍生費用。
重要
刪除資源群組是無法回復的動作,資源群組和其內的所有資源將會永久刪除。 請確定您不會不小心刪除錯誤的資源群組或資源。 如果您是在包含需保留資源的現有資源群組內部,建立用來裝載此範例的資源,則可以個別刪除每個資源,而不必刪除整個資源群組。
登入 Azure 入口網站,然後選取 [資源群組]。
在 [依名稱篩選] 文字方塊中,輸入您的資源群組名稱。 本文的指示是使用名為 TestResources 的資源群組。 在結果清單中的目標資源群組上方,選取 ...,然後按一下 [刪除資源群組]。
輸入您的資源群組名稱以確認刪除,然後選取 [刪除]。
片刻過後,系統便會刪除該資源群組及其所有內含的資源。
下一步
在本快速入門中,您已了解如何從 Java 應用程式使用 Azure Cache for Redis。 請繼續閱讀下一個快速入門,以搭配使用 Azure Cache for Redis 與 ASP.NET Web 應用程式。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應