アーキテクチャセンター
Set Up Database Caching with Redis for RDS MySQL

Redis を使用した RDS MySQL のデータベースキャッシュの設定

概要
このソリューションは、Redis を使用して ApsaraDB RDS for MySQL のデータベースキャッシュを構築する最もシンプルな方法を提供します。
このソリューションは、Redis のキーの有効期限である Time-To-Live (TTL) に依存しています。MySQL が更新されても Redis は自動的に更新されません。実装はシンプルですが、特に読み取りリクエストが頻繁なシナリオでは、データの不一致期間が長くなる可能性があります。
リファレンスアーキテクチャ
ステップ
リソースのデプロイ
この main.tf ファイルを Terraform で使用して、このソリューションの ECS、Redis、および RDS MySQL インスタンスをプロビジョニングします。
Terraform の使用方法の詳細については、RDS MySQL 向け Terraform のクイックスタートを参照してください。
ApsaraDB for RedisApsaraDB RDS for MySQL の使用方法、および Redis の TTL ベースのキャッシュ retiring については、MySQL アーキテクチャ向け Redis キャッシュを参照してください。
デモの実行
1. ECS にログインして環境をセットアップします
注:このチュートリアルでは Alibaba Cloud Linux を使用します。Terraform スクリプトを確認すると、イメージ ID:aliyun_2_1903_x64_20G_alibase_20200904.vhd が表示されます。
1.1 ECS の Elastic IP Address (EIP) を取得し、SSH で ECS にログインします。アカウント root/N1cetest を使用してください。このチュートリアルのパスワードは Terraform スクリプトで事前定義されています。パスワードを変更した場合は、正しいパスワードを使用してください。
ssh root@
1.2 次のコマンドを実行して、JDK、Maven、MySQL (MySQL Client 含む) など、インスタンスに必要なユーティリティをインストールします:
yum install java-latest-openjdk.x86_64 yum install maven yum install mysql
2. アプリケーションの変更と実行
2.1 次のコマンドを 1 つずつ実行します
デモアプリケーションコードをダウンロードし、デモ Java アプリケーションをビルドします。
wget https://github.com/alibabacloud-howto/solution-mysql-redis-cache-simple/raw/master/source.tar.gz tar xvf source.tar.gz && cd source mvn clean package assembly:single -DskipTests
2.2 env.sh ファイルを編集して、Redis と RDS MySQL のエンドポイント (Redis と RDS MySQL の Web コンソールから取得できます) を設定します。
2.3 mysql_client.sh を使用して、RDS MySQL にデモテーブルを作成し、レコードを挿入します。
sh mysql_client.sh < rosebowl.sql
2.4 Redis デモアプリケーションを実行して、キャッシュと TTL ロジックを検証します。query.sql ファイルからクエリを選択して実行できます。デモアプリケーションのデフォルト TTL は 10 秒に設定されており、結果が MySQL と Redis キャッシュのどちらから取得されたかを確認できます。Redis キャッシュ内のクエリ結果の有効期間は 10 秒のみです。延長する場合は、コードを変更して再ビルドしてください。
sh run_sample_app.sh

Alibaba Cloud のエキスパートにサポートを依頼する

お問い合わせ
phone お問い合わせ
Hi, I'm Alibaba Cloud AI Assistant!
I can help with questions and solutions.