RDS可以和雲資料庫Memcache、雲資料庫Redis搭配使用,組成高吞吐、低延遲的儲存解決方案。下面以雲資料庫Memcache與RDS的搭配使用為例介紹快取資料持久化方案。

背景資訊

與RDS相比,雲資料庫緩衝產品有如下兩個特性:

  • 響應速度快,雲資料庫Memcache和雲資料庫Redis請求的時延通常在幾毫秒以內。

  • 緩衝區能夠支援比RDS更高的QPS(每秒處理請求數)。

環境要求

  • 本地環境或者ECS已安裝bmemcached(支援SASL擴充)。

    bmemcached 下載地址:https://github.com/jaysonsantos/python-binary-memcached

    bmemcached 命令如下:

    pip install python-binary-memcached
  • 以Python為例,本地或者EC 環境需安裝python、pip。

程式碼範例

雲資料庫Memcache與RDS搭配使用的程式碼範例如下。

#!/usr/bin/env python
import bmemcached
Memcache_client = bmemcached.Client((‘ip:port’), ‘user’, ‘passwd’)
#在雲資料庫Memcache中尋找某個值
res = os.client.get(‘test’)
if res is not None:
    return res     #查詢到值則返回
else:
    #未查詢到值,則在RDS查詢操作
    res = mysql_client.fetchone(sql)
    Memcache_client.put(‘test’, res) #向雲資料庫Memcache中寫入快取資料
    return res