クイック スタート: Java で Azure Redis Cache を使用する方法Quickstart: How to use Azure Redis Cache with Java

Azure Redis Cache を使用すると、Microsoft が管理している専用の Redis Cache にアクセスできます。Azure Redis Cache gives you access to a dedicated Redis cache, managed by Microsoft. キャッシュは、Microsoft Azure 内の任意のアプリケーションからアクセスできます。Your cache is accessible from any application within Microsoft Azure.

この記事では、Java 用の Jedis Redis Cache クライアントを使用して Azure Redis Cache の使用を開始する方法を示します。This article shows you how to get started with Azure Redis Cache using the Jedis Redis Cache client for Java.

完了したキャッシュ アプリ

このクイック スタートの手順は、任意のコード エディターを使用して実行できます。You can use any code editor to complete the steps in this quickstart. ただし、推奨のエディターは Visual Studio Code です (Windows、macOS、および Linux プラットフォームで使用できます)。However, Visual Studio Code is an excellent option available on the Windows, macOS, and Linux platforms.

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.

前提条件Prerequisites

Apache MavenApache Maven

Azure Redis Cache の作成Create an Azure Redis cache

  1. キャッシュを作成するには、まず Azure portal にサインインします。To create a cache, first sign in to the Azure portal. 次に、[リソースの作成] > [データベース] > [Redis Cache] を選択します。Then select Create a resource > Databases > Redis Cache.

    新しいキャッシュ

  2. [新規 Redis Cache] で、新しいキャッシュの設定を構成します。In New Redis Cache, configure the settings for your new cache.

    SettingSetting 推奨値Suggested value 説明Description
    DNS 名DNS name グローバルに一意の名前Globally unique name キャッシュ名。The cache name. 1 から 63 文字の文字列で、数字、英字、- 文字のみを使用する必要があります。It must be a string between 1 and 63 characters and contain only numbers, letters, and the - character. キャッシュ名の先頭と末尾には - 文字を使用できません。また、連続する - 文字は無効です。The cache name cannot start or end with the - character, and consecutive - characters are not valid.
    サブスクリプションSubscription 該当するサブスクリプションYour subscription この新しい Azure Redis Cache インスタンスが作成されるサブスクリプション。The subscription under which this new Azure Redis Cache instance is created.
    [リソース グループ]Resource group TestResourcesTestResources その中にキャッシュを作成する新しいリソース グループの名前。Name for the new resource group in which to create your cache. アプリのすべてのリソースを 1 つのグループ内に配置することで、それらを一緒に管理できます。By putting all the resources for an app in a group, you can manage them together. たとえば、リソース グループを削除すると、そのアプリに関連付けられているすべてのリソースが削除されます。For example, deleting the resource group deletes all resources that are associated with the app.
    場所Location 米国東部East US キャッシュを使用する他のサービスの近くのリージョンを選択します。Choose a region near to other services that will use your cache.
    価格レベルPricing tier Basic C0 (250 MB のキャッシュ)Basic C0 (250 MB Cache) 価格レベルによって、キャッシュに使用できるのサイズ、パフォーマンス、および機能が決まります。The pricing tier determines the size, performance, and features that are available for the cache. 詳細については、Azure Redis Cache の概要に関するページを参照してください。For more information, see Azure Redis Cache Overview.
    ダッシュボードにピン留めするPin to dashboard オンSelected 新しいキャッシュをダッシュボードにピン留めし、簡単に見つけられるようにします。Pin the new cache to your dashboard to make it easy to find.

    キャッシュの作成

  3. 新しいキャッシュ設定を構成したら、[作成] を選択します。After the new cache settings are configured, select Create.

    キャッシュが作成されるまで数分かかる場合があります。It can take a few minutes for the cache to be created. 状態を確認するには、ダッシュボードで進行状況を監視してください。To check the status, you can monitor the progress on the dashboard. キャッシュが作成されると、実行中の状態が表示され、使用できるようになります。After the cache has been created, it shows the status Running, and is ready for use.

    作成されたキャッシュ

Azure portal を使用して、ホスト名、ポート、およびアクセス キーを取得するRetrieve host name, ports, and access keys by using the Azure portal

Azure Redis Cache のインスタンスに接続するときには、キャッシュ クライアントにキャッシュのホスト名、ポート、およびキーが必要です。When connecting to an Azure Redis Cache instance, cache clients need the host name, ports, and a key for the cache. クライアントによっては、これらの項目を参照するための名前が若干異なる場合があります。Some clients might refer to these items by slightly different names. この情報は、Azure Portal で取得できます。You can retrieve this information in the Azure portal.

アクセス キーおよびホスト名を取得するにはTo retrieve the access keys and host name

  1. Azure portal を使用してアクセス キーを取得するには、キャッシュを参照して、[アクセス キー] を選択します。To retrieve the access keys by using the Azure portal, browse to your cache and select Access keys.

    Azure Redis Cache のキー

  2. ホスト名とポートを取得するには、[プロパティ] を選択します。To retrieve the host name and ports, select Properties.

    Azure Redis Cache のプロパティ

[ホスト名][プライマリ] アクセス キーの環境変数を追加します。Add environment variables for your HOST NAME and Primary access key. コードに機密情報を直接含める代わりに、これらの変数をコードから使用します。You will use these variables from your code instead of including the sensitive information directly in your code.

set REDISCACHEHOSTNAME=contosoCache.redis.cache.windows.net
set REDISCACHEKEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

新しい Java アプリを作成するCreate a new Java app

Maven を使用して、新しいクイック スタート アプリを生成します。Using Maven, generate a new quickstart app:

mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.3 -DgroupId=example.demo -DartifactId=redistest -Dversion=1.0

新しい redistest プロジェクト ディレクトリに移動します。Change to the new redistest project directory.

pom.xml ファイルを開き、Jedis の依存関係を追加します。Open the pom.xml file and add a dependency for Jedis:

    <dependency>
        <groupId>redis.clients</groupId>
        <artifactId>jedis</artifactId>
        <version>2.9.0</version>
        <type>jar</type>
        <scope>compile</scope>
    </dependency>

pom.xml ファイルを保存します。Save the pom.xml file.

App.java を開き、コードを次のコードに置き換えます。Open App.java and replace the code with the following code:

package example.demo;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisShardInfo;

/**
 * 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 Redis cache over the SSL port using the key.
        JedisShardInfo shardInfo = new JedisShardInfo(cacheHostname, 6380, useSsl);
        shardInfo.setPassword(cachekey); /* Use your access key. */
        Jedis jedis = new Jedis(shardInfo);      

        // 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!"));

        // Demostrate "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 Redis Cache インスタンスに接続する方法を示しています。This code shows you how to connect to an Azure Redis Cache instance using the cache host name and key environment variables. コードでは、キャッシュ内の文字列値の格納および取得も行います。The code also stores and retrieves a string value in the cache. PING および CLIENT LIST コマンドも実行されます。The PING and CLIENT LIST commands are also executed.

App.java を保存します。Save App.java.

アプリのビルドと実行Build and run the app

次の Maven コマンドを実行して、アプリをビルドおよび実行します。Execute the following Maven command to build and run the app:

mvn exec:java -D exec.mainClass=example.demo.App

次の例では、Message キーは、前に Azure portal の Redis コンソールを使って設定されたキャッシュ値を持っていたことがわかります。In the example below, you can see the Message key previously had a cached value, which was set using the Redis Console in the Azure portal. アプリは、そのキャッシュ値を更新しました。The app updated that cached value. また、アプリは PING および CLIENT LIST コマンドも実行しました。The app also executed the PING and CLIENT LIST commands.

完了したキャッシュ アプリ

リソースのクリーンアップClean up resources

次のチュートリアルに進む場合は、このクイック スタートで作成したリソースを維持して、再利用することができます。If you will be continuing to the next tutorial, you can keep the resources created in this quickstart and reuse them.

クイック スタートのサンプル アプリケーションの使用を終える場合は、課金を避けるために、このクイック スタートで作成した Azure リソースを削除することができます。Otherwise, if you are finished with the quickstart sample application, you can delete the Azure resources created in this quickstart to avoid charges.

重要

いったん削除したリソース グループを元に戻すことはできません。リソース グループとそこに存在するすべてのリソースは完全に削除されます。Deleting a resource group is irreversible and that the resource group and all the resources in it are permanently deleted. 間違ったリソース グループやリソースをうっかり削除しないようにしてください。Make sure that you do not accidentally delete the wrong resource group or resources. このサンプルのホストとなるリソースを、保持するリソースが含まれている既存のリソース グループ内に作成した場合は、リソース グループを削除するのではなく、個々のブレードから各リソースを個別に削除することができます。If you created the resources for hosting this sample inside an existing resource group that contains resources you want to keep, you can delete each resource individually from their respective blades instead of deleting the resource group.

Azure ポータル にサインインし、 [リソース グループ] をクリックします。Sign in to the Azure portal and click Resource groups.

[名前でフィルター] ボックスにリソース グループの名前を入力します。In the Filter by name... textbox, type the name of your resource group. この記事の手順では、TestResources という名前のリソース グループを使用しました。The instructions for this article used a resource group named TestResources. 結果一覧でリソース グループの [...] をクリックし、[リソース グループの削除] をクリックします。On your resource group in the result list, click ... then Delete resource group.

Delete

リソース グループの削除の確認を求めるメッセージが表示されます。You will be asked to confirm the deletion of the resource group. 確認のためにリソース グループの名前を入力し、[削除] をクリックします。Type the name of your resource group to confirm, and click Delete.

しばらくすると、リソース グループとそこに含まれているすべてのリソースが削除されます。After a few moments, the resource group and all of its contained resources are deleted.

次の手順Next steps

このクイック スタートでは、Java アプリケーションから Azure Redis Cache を使用する方法を説明しました。In this quickstart, you learned how to use Azure Redis Cache from a Java application. ASP.NET Web アプリで Redis Cache を使用するには、次のクイック スタートに進みます。Continue to the next quickstart to use Redis Cache with an ASP.NET web app.