展开
当前位置:
首页 > 帮助文档 > 产品简介 > RDS场景 缓存数据持久化/多结构数据存储

RDS场景 缓存数据持久化/多结构数据存储

RDS支持搭配云数据库Memcached\Redis\OSS等存储产品使用,实现多样化存储扩展。
数据缓存需求

缓存数据持久化

将云数据库Memcached、云数据库Redis与RDS搭配使用,组成高吞吐,低延迟的存储解决方案。与RDS相比云数据库缓存产品产品有两个特性:
1、响应速度快,云数据库Memcached\Redits请求的时延通常在几毫秒以内;
2、缓存区能够支持比RDS更高的QPS(每秒处理请求数)。
下面以云数据库Memcached与RDS的搭配使用为例说明:
云数据库Memcached环境配置 (以Python为例)
依赖于bmemcached(支持SASL扩展),下载链接https://github.com/jaysonsantos/python-binary-memcached
ECS或本地环境在已经安装了python、pip的环境下执行

pip install python-binary-memcached

即完成云数据库Memcached依赖bmemcached扩展的安装
云数据库Memcached与RDS搭配使用代码实例

#!/usr/bin/env python
import bmemcached
Memcached_client = bmemcached.Client((‘ip:port’), ‘user’, ‘passwd’)
#在云数据库Memcached中查找某个值
res = os.client.get(‘test’)
if res is not None:
    return res     #查询到值则返回
else:
    #未查询到值,则在RDS查询操作
    res = mysql_client.fetchone(sql)
    Memcached_client.put(‘test’, res) #向云数据库Memcached中写入缓存数据
    return res

多结构数据存储

OSS是阿里云对外提供的海量,安全,低成本,高可靠的云存储服务。搭配RDS使用,组成多类型数据存储解决方案。
OSS与RDS结合使用时,当ECS应用为论坛时,注册用户的图像、帖子内容的图像等资源可以交由OSS来存储,减少RDS的存储压力。
OSS与RDS搭配使用示例

1、初始化OssApi
from oss.oss_api import *
endpoint=”oss-cn-hangzhou.aliyuncs.com”  
accessKeyId, accessKeySecret=”your id”,”your secret”
oss = OssAPI(endpoint, accessKeyId, accessKeySecret) 

2. 新建Bucket 
#设置bucket权限为私有
res = oss.create_bucket(bucket,"private") 
print "%s\n%s" % (res.status, res.read())

3. 上传Object
res = oss.put_object_from_file(bucket, object, "test.txt")
print "%s\n%s" % (res.status, res.getheaders())

4. 获取对应Object
res = oss.get_object_to_file(bucket, object, "/filepath/test.txt") 
print "%s\n%s" % (res.status, res.getheaders())

ECS应用代码中,RDS中存储了每个用户的id,而用户对应的头像资源存储于OSS中,以简单的python代码为例:

#!/usr/bin/env python
from oss.oss_api import *
endpoint=”oss-cn-hangzhou.aliyuncs.com”  
accessKeyId, accessKeySecret=”your id”,”your secret”
oss = OssAPI(endpoint, accessKeyId, accessKeySecret)
user_id = mysql_client.fetch_one(sql)#从RDS中查找用户的user_id
#获取用户头像并下载到对应路径
oss.get_object_to_file(bucket, object, your_path/user_id+’.png’)

#处理用户上传头像
oss.put_object_from_file(bucket, object, your_path/user_id+’.png’)
阿里云代理网,享受阿里云代理价

RDS场景 缓存数据持久化/多结构数据存储:等您坐沙发呢!

发表评论

表情
还能输入210个字