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