检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
该报错代表执行的Redis命令存在参数错误(语法错误),可以参考开源Redis命令协议介绍进行命令构造。 ERR unknown command 'xxx' 该报错代表此命令为未知命令或者非redis协议定义的合法命令,可以参考开源Redis命令协议介绍进行命令构造。 ERR Unsupported command:
时,需要对每个redis-server分别执行该命令。 客户端协议 使用传统Redis客户端即可。 使用传统Redis客户端即可,不需要支持Redis Cluster协议。 需要客户端支持Redis Cluster协议。 命令限制 不支持的Redis命令,请参考开源命令兼容性。
Memcached引擎支持基于TCP(Memcached Text Protocol)的文本协议和二进制(Memcached Binary Protocol)协议,任何兼容Memcached协议的客户端都可以访问DCS。 文本协议 Memcached文本协议通过ASCII文本传递命令,便于用户编写客户端和调测问题,
Cluster集群由于没有代理层,在时延和性能方面具备一定的优势;但是对于客户端使用方面,由于Cluster集群使用开源的Redis Cluster协议,在客户端的兼容性方面略差于Proxy集群。 推荐的Cluster集群客户端: 表2 Cluster集群客户端 客户端语言 客户端类型 Cluster集群参考文档
时使⽤ 如需使⽤RESP3协议,需要保证客户端SDK⽀持RESP3协议,否则在建立连接时,与服务端通过hello通信协商使⽤的协议依旧是RESP2协议。 客户端缓存 Redis 6.0中通过TRACKING模块实现了主动通知客户端刷新缓存的机制,根据协议类型,实现⽅式如下: RESP3
线程都可承担端口监听(监听建立网络链接的请求)、accept请求(接纳并建立网络链接)、读取数据(从网络链接如socket读写数据)和解析协议(解析并处理Redis命令等),依托于服务器计算能力的提升,整体性能N倍提升。 表1 企业版和基础版的能力对比 对比项 DCS基础版 DCS企业版
Redis集群可以读取每个节点的IP地址吗? Redis 3.0版本的集群实例(Proxy版本)的使用方式与单机、主备实例相同,无需知晓后端地址。 Redis 4.0及以上版本的集群实例(Cluster版本)可以使用cluster nodes命令获取。 redis-cli -h {redis_address}
0基础版的单机、主备、Cluster集群实例支持开启SSL链路加密传输,确保数据传输过程的安全性。其他版本的实例暂不支持该功能,Redis的传输协议RESP在Redis 6.0之前的版本仅支持明文传输。 约束与限制 因SSL加密传输的原因,SSL和客户端IP透传功能无法同时开启,加密链路下不支持携带客户端IP。
要服务于数据不需要由缓存实例做持久化的业务场景,如数据库前端缓存,用以提升数据读取效率,减轻后端并发压力。当缓存中查询不到数据,可穿透至磁盘数据库中获取,同时,重启服务/缓存实例时,可从磁盘数据库中获取数据进行预热,降低后端服务在启动初期的压力。 实例架构设计 DCS的Redis单机实例架构,如图1所示。
若选用密码模式,您需要在创建实例时自定义密码。 Memcached实例支持密码模式和免密模式,用户可以根据自身应用特点选用支持文本和二进制协议的任何Memcached客户端。若选用密码模式,您需要在创建实例时自定义密码。 如需修改Redis访问方式、修改或重置密码,请参考密码管理。
当前Redis没有成熟的双活(Active-Active,注意不同于灾备或者主备高可用)方案,华为云DCS不支持跨Region多活功能。 这是由于私有定制Redis通信协议(RESP协议)的标准无法统一等原因无法实现跨云/Region的Redis侧双活,因此,如果需要双活,可以通过应用侧进行双写改造实现。 图9 应用侧双写实现多活
连接Redis网络要求 任何兼容Redis协议的客户端都可以访问DCS的Redis实例,您可以根据自身应用特点选用任何Redis客户端,Redis支持的客户端列表请参见Redis客户端。 客户端连接Redis在不同的连接场景下,需要满足不同的连接约束: 使用同一VPC内客户端访问Redis实例。
在创建Redis实例时,您可以根据需求选择实例版本、类型和规格,并配置VPC和子网。 连接Redis实例并读写数据 您可以通过兼容Redis协议的客户端或DCS控制台的Web CLI连接Redis实例,并执行Redis命令读写数据。 准备工作 注册华为云并实名认证。 如果您已有一个
要服务于数据不需要由缓存实例做持久化的业务场景,如数据库前端缓存,用以提升数据读取效率,减轻后端并发压力。当缓存中查询不到数据,可穿透至磁盘数据库中获取,同时,重启服务、缓存实例时,可从磁盘数据库中获取数据进行预热,降低后端服务在启动初期的压力。 实例架构设计 DCS的Memcached单机实例架构,如图1所示。
Redis 5.0基于开源5.0.9版本进行开发,兼容开源的协议和命令。本章节主要介绍DCS Redis 5.0命令的兼容性,包括支持命令列表,禁用命令列表。 DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redi
4.0基于开源4.0.14版本进行开发,兼容开源的协议和命令。本章节主要介绍DCS Redis 4.0命令的兼容性,包括支持命令列表,禁用命令列表。 DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redi
例,可通过开启Memcached实例的免密访问功能,清空Memcached实例的用户名和密码。 Memcached文本协议不支持用户名密码认证,若需要使用文本协议连接Memcached实例,必须开启实例的免密访问。 对于免密访问模式的Memcached实例,当您需要通过用户名和密
Redis 3.0支持及禁用的命令(已停售) 华为云DCS Redis 3.0基于开源3.0.7版本进行开发,兼容开源的协议和命令。本章节主要介绍DCS Redis 3.0命令的兼容性,包括支持命令列表,禁用命令列表,以及不支持的高版本Redis脚本和命令列表,以及命令使用限制说明。
Redis 7.0命令的兼容性,包括支持命令列表,禁用命令列表。 DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis 7.0禁用的命令。 DCS集群实例
Redis 6.0命令的兼容性,包括支持命令列表,禁用命令列表。 DCS Redis缓存实例支持Redis的绝大部分命令,任何兼容Redis协议的客户端都可以访问DCS。 因安全原因,部分Redis命令在分布式缓存服务中被禁用,具体请见Redis 6.0禁用的命令。 DCS集群实例