RDS をApsaraDB for Memcache および ApsaraDB for Redis と共に使用して、高スループットで低遅延のストレージソリューションを構成できます。 この文書では、RDS と ApsaraDB for Memcache を組み合わせて使用することに基づくキャッシュデータ永続化ソリューションについて説明します。
背景情報
RDS と比較して、ApsaraDB for Memcache と ApsaraDB for Redis には、次の 2 つの機能があります。
- 応答速度が速い: ApsaraDB for Memcache およびApsaraDB for Redis のリクエスト遅延は、通常数ミリ秒以内です。
- キャッシュ領域は、RDS よりも高い QPS (1 秒あたりのリクエスト数) をサポートできます。
システム要件
- bmemcached (SASL 拡張機能のサポート付き) がローカル環境または ECS にインストールされています。
bmemcached ダウンロードアドレス: 「こちら」をクリックして、ダウンロードします。
次のコマンドを実行します。
pip install python-binary-memcached
- 例として Python が使用されています。 Python と pip をローカル環境または ECS にインストールする必要があります。
サンプルコード
次のサンプルコードは、Memcache に RDS と ApsaraDB を組み合わせて使用する方法を示しています。
/usr/bin/env python
import bmemcached
Memcache_client = bmemcached.Client((‘ip:port’), ‘user’, ‘passwd’)
#Search for a value in ApsaraDB for Memcache
res = os.client.get(‘test’)
if res is not None:
return res #Return the searched value
else:
#Query RDS if the value is not found
res = mysql_client.fetchone(sql)
Memcache_client.put(‘test’, res) #Write cached data to ApsaraDB for Memcache
return res