检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用DCS实现视频直播弹幕和社交网站评论的功能 方案概述 应用场景 视频、直播弹幕展示和社交网站评论回复等场景,要求时效性高,互动性强,类似这样的业务对平台的系统时延有着非常高的要求。如果使用关系型数据库,会涉及到按评论时间逆排序,随着评论越来越多,排序效率越来越低,且并发频繁。
如果有已知的大Key模式,例如知道其前缀为cloud:msg:test,那么可以通过一个程序,SCAN符合该前缀的Key,然后通过查询成员数量和查询Key大小的相关命令,来判断具体的大Key。 查询成员数量的相关命令:LLEN,HLEN,XLEN,ZCARD,SCARD 查询Key占用内存大小的命令:DEBUG
如果同时使用多个标签键值对进行查询,中间使用逗号分隔开,表示查询同时包含指定标签键值对的实例。 取值范围: 不涉及。 默认取值: 不涉及。 ip 否 String 参数解释: 连接缓存实例的IP地址,如192.168.7.146。可以通过DCS控制台进入实例详情界面查看。 约束限制: 不涉及。
E:键事件通知,所有通知以__keyevent@__为前缀。 g:DEL、EXPIRE、RENAME等类型无关的通用命令的通知。 $:字符串命令的通知。 l:列表命令的通知。 s:集合命令的通知。 h:哈希命令的通知。 z:有序集合命令的通知。 x:过期事件:每当有过期键被删除时发送。 e:驱逐(evict)事件
运行在ECS上的客户应用程序,即Memcached的客户端。 Memcached实例兼容开源协议,可直接使用开源客户端进行连接,关于多语言客户端连接示例,请参考用户指南的连接缓存实例。 DCS缓存实例 DCS实例。主备实例包含了Master和Slave两个节点。默认开启数据持久化功能,同时保持节点间数据同步。 DCS
说明 生命周期管理 包括实例的创建、查询和删除,实例信息的修改以及实例扩容。 实例管理 包括重启实例、查询实例状态、修改密码、查询实例的统计信息等接口。 分片与副本 包括添加副本、设置备节点切换为主节点的优先级、查询分片信息等接口。 参数管理 包括查询和修改实例配置参数接口。 备份与恢复
库存超卖的现象。 解决方案 基于上述场景,需要保证两台机器加的锁是同一个锁,用加锁的方式对某种资源进行顺序访问控制。这就需要分布式锁登场了。 分布式锁的思路是:在整个系统提供一个全局的、唯一的分配锁的“东西”,当每个系统需要加锁时,都向其获取一把锁,使不同的系统获取到的内容可以认为是同一把锁。
您可以根据业务需要购买相应计算能力和存储空间的Redis实例,可同时购买多个Redis实例。 准备实例依赖资源 DCS的Redis实例部署于虚拟私有云(VPC)中,且需要绑定具体的子网,通过这样的方式为Redis提供隔离的、用户可自主配置管理的虚拟网络环境。如果是企业版Redis,还需要配置安全组,以提升实例的安全性。
DCS的Memcached与自建Memcached的区别是什么? DCS的Memcached与本地自建Memcached的区别如下表1所示。 表1 DCS Memcached与自建Memcached的区别 比较项 DCS Memcached 自建Memcached 部署 DCS的Me
详情界面查看。根据该字段可查询出实例可变更的规格。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 spec_code 否 String 参数解释: 产品规格编码。获取方法如下: 方法一:登录分布式缓存的控制台,在创建缓存实例页面,查找对应的实例规格的规格编码。
time,简称RTT),减少read()和write()的系统调用和进程切换次数,从而提升程序的执行效率与性能。 因此,在需要执行Redis批量操作,且用户无需立即获得每个操作结果的场景下,可以使用Pipeline作为优化性能的批处理工具。 使用Pipeline时客户端将独占与服务器端的连接,此期间将不能进行其他
确认数据的完整性: 连接源Redis和目标Redis。连接Redis的方法请参考Redis-cli客户端连接Redis。 输入info keyspace,查看keys参数和expires参数的值。 对比源Redis和目标Redis的keys参数分别减去expires参数的差值。如果差值一致,则表示数据完整,迁移正常。
清空不彻底的问题。 目前只有Redis 4.0及以上版本的实例支持在DCS控制台上执行“数据清空”功能及通过管理控制台的Web CLI功能连接Redis实例。 在Web CLI界面使用flushdb命令,一次只会清理一个分片,如果有多个分片,需要用命令行连接到每个分片的主节点上,分别执行flushdb。
在管理控制台左上角单击,选择实例所在的区域。 单击左侧菜单栏的“缓存管理”,进入实例信息页面。 单击需要创建白名单的DCS缓存实例名称,进入该实例的基本信息页面。 选择“实例配置 > 白名单配置”进入白名单配置页面,单击“创建白名单分组”。 在弹出的“创建白名单分组”页面,设置“分组名”和“IP地址/地址段”。
} } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 查询后台任务列表成功。 400 非法请求。 401 认证信息非法。 403 请求被拒绝访问。 404 所请求的资源不存在。 500 内部服务错误。
存缺货,同时提供流畅的用户体验,压力巨大。 可以利用Memcached的incr/decr功能, 在内存中存储商品的库存量, 秒杀的抢单过程主要在内存中完成,速度非常快,抢单成功即得一个订单号,这时再去支付页面完成订单的后续操作。 不适用Memcached的应用场景: 单个缓存对象大于1M
0支持的新特性说明 DCS的Redis 6.0版本继承了Redis 5.0版本的所有功能增强以及新的命令,同时还兼容开源Redis 6.0版本的新增特性。 RESP3协议 在Redis 6.0中,推出了下⼀代Redis协议-RESP3,相比于RESP2协议,增加了⼀部分新的数据类型。
源Redis在数据库编号0和2中有数据,生成的AOF或RDB文件包含了这两个库。 在导入到Proxy集群实例时会忽略“select 2”的命令,然后继续导入源数据库2中的数据到DB0中。 用户需要注意以下: 源Redis中不同数据库包含了相同的key,则导入时,编号靠前的数据库的key的value会被靠后的数据库中的key覆盖。
fmt.Println(err) } } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 查询实例恢复记录成功。 204 查询实例恢复当前无记录。 400 非法请求。 错误码 请参见错误码。
fmt.Println(err) } } 更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。 状态码 状态码 描述 200 查询实例配置参数成功。 400 非法请求。 500 内部服务错误。 错误码 请参见错误码。