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