云服务器内容精选

  • SDK列表 表1提供了 SMN 服务支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 NodeJS huaweicloud-sdk-nodejs-v3 NodeJS SDK使用指导 PHP huaweicloud-sdk-php-v3 PHP SDK使用指导
  • SDK列表 在开始使用之前,请确保您安装的是最新版本的SDK。使用过时的版本可能会导致兼容性问题或无法使用最新功能。您可以在 SDK中心 查询版本信息。 表1提供了分布式消息服务Kafka版支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导 NodeJs huaweicloud-sdk-nodejs-v3 NodeJs SDK使用指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 PHP huaweicloud-sdk-php-v3 PHP SDK使用指导 表1提供的SDK为管理面API的SDK,并非生产消费消息的SDK。如果需要生产消费消息的SDK,请参考开发指南。
  • SDK列表 在开始使用之前,请确保您安装的是最新版本的SDK。使用过时的版本可能会导致兼容性问题或无法使用最新功能。您可以在SDK中心查询版本信息。 表1提供了分布式消息服务RabbitMQ版支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 SDK列表 编程语言 Github地址 参考文档 Java huaweicloud-sdk-java-v3 Java SDK使用指导 Python huaweicloud-sdk-python-v3 Python SDK使用指导 Go huaweicloud-sdk-go-v3 Go SDK使用指导 NodeJs huaweicloud-sdk-nodejs-v3 NodeJs SDK使用指导 .NET huaweicloud-sdk-net-v3 .Net SDK使用指导 PHP huaweicloud-sdk-php-v3 PHP SDK使用指导 表1提供的SDK为管理面API的SDK,并非生产消费消息的SDK。如果需要生产消费消息的SDK,请参考开发指南。
  • 分布式消息服务RocketMQ版5.x专业版默认规格 专业版目前还处于公测阶段。 分布式消息服务RocketMQ版5.x专业版产品规格由以下六个维度定义: 资源规格:定义使用的弹性云服务器的规格类型。 存储容量:定义实例可以保存的存储容量。 实例TPS:定义实例的TPS性能。 弹性TPS:定义实例的弹性TPS。 实例Topic数上限:定义实例可以创建的Topic数量。 实例消费组数上限:定义实例可以创建的消费组数量。 分布式消息服务RocketMQ版5.x专业版支持的产品规格如表4和表5所示。下表中TPS是指以普通消息类型、4KB消息大小为基准计算的每秒收发消息的总条数。如果消息类型为定时消息/延时消息/事务消息,发送消息的调用次数需要在普通消息基础上乘以5,接收消息的调用次数不需要乘以5。例如:每秒发送一条普通消息,TPS为1次/秒。每秒发送一条事务消息,TPS=1*5=5次/秒。 表4 实例规格说明(分布式消息服务RocketMQ版5.x专业版单机) 资源规格 存储容量(GB) 实例TPS 实例Topic数上限 实例消费组数上限 rocketmq.p1.large.1 100 ~ 30000 500 200 500 表5 实例规格说明(分布式消息服务RocketMQ版5.x专业版集群) 资源规格 存储容量(GB) 实例TPS 弹性TPS 实例Topic数上限 实例消费组数上限 rocketmq.p2.large.8 200 ~ 60000 4000 2000 400 1500 rocketmq.p2.large.12 200 ~ 60000 6000 3000 400 1500 rocketmq.p2.large.20 200 ~ 60000 10000 5000 800 1500 rocketmq.p2.large.40 400 ~ 120000 20000 10000 800 1500 rocketmq.p2.large.100 400 ~ 120000 50000 25000 1000 2000 rocketmq.p2.large.150 400 ~ 120000 75000 37500 1000 2000 rocketmq.p2.large.200 800 ~ 240000 100000 50000 1500 4000 rocketmq.p2.large.300 800 ~ 240000 150000 50000 1500 4000
  • 分布式消息服务RocketMQ版4.8.0默认规格 分布式消息服务RocketMQ版4.8.0产品规格由以下六个维度定义: 资源规格:定义使用的弹性云服务器的规格类型。 代理个数:定义实例的规模。 存储容量:定义单个代理可以保存的存储容量。 单个代理TPS:定义单个代理的TPS性能。 单个代理Topic数上限:定义单个代理可以创建的Topic数量。 单个代理消费组数上限:定义单个代理可以创建的消费组数量。 分布式消息服务RocketMQ版4.8.0支持的产品规格如表1所示。 TPS(Transaction per second)是指每秒可以生产消息和消费消息的总次数,可以理解为对应规格每秒生产消息和消费消息的总吞吐量。 表1 实例规格说明(分布式消息服务RocketMQ版4.8.0) 资源规格 代理(个) 存储容量(GB/代理) 单个代理TPS 单个代理Topic数上限 单个代理消费组数上限 rocketmq.4u8g.cluster.small 1 ~ 10 300 ~ 30000 15000 2000 2000 rocketmq.4u8g.cluster 1 ~ 10 300 ~ 60000 20000 4000 4000 rocketmq.8u16g.cluster 1 ~ 10 300 ~ 90000 25000 8000 8000 rocketmq.12u24g.cluster 1 ~ 10 300 ~ 90000 28000 12000 12000 rocketmq.16u32g.cluster 1 ~ 10 300 ~ 90000 30000 16000 16000
  • 分布式消息服务RocketMQ版5.x基础版默认规格 分布式消息服务RocketMQ版5.x基础版产品规格由以下五个维度定义: 资源规格:定义使用的弹性云服务器的规格类型。 存储容量:定义实例可以保存的存储容量。 实例TPS:定义实例的TPS性能。 实例Topic数上限:定义实例可以创建的Topic数量。 实例消费组数上限:定义实例可以创建的消费组数量。 分布式消息服务RocketMQ版5.x基础版支持的产品规格如表2和表3所示。下表中TPS是指以普通消息类型、4KB消息大小为基准计算的每秒收发消息的总条数。如果消息类型为定时消息/延时消息/事务消息,发送消息的调用次数需要在普通消息基础上乘以5,接收消息的调用次数不需要乘以5。例如:每秒发送一条普通消息,TPS为1次/秒。每秒发送一条事务消息,TPS=1*5=5次/秒。 表2 实例规格说明(分布式消息服务RocketMQ版5.x基础版单机) 资源规格 存储容量(GB) 实例TPS 实例Topic数上限 实例消费组数上限 rocketmq.b1.large.1 100 ~ 30000 500 50 500 表3 实例规格说明(分布式消息服务RocketMQ版5.x基础版集群) 资源规格 存储容量(GB) 实例TPS 实例Topic数上限 实例消费组数上限 rocketmq.b2.large.4 200 ~ 60000 2000 100 1000 rocketmq.b2.large.8 200 ~ 60000 4000 100 1000 rocketmq.b2.large.12 200 ~ 60000 6000 100 1000
  • 身份认证 无论用户通过控制台还是API访问DMS for RocketMQ,都会要求访问请求方出示身份凭证,并进行身份合法性校验,同时提供登录保护和登录验证策略加固身份认证安全。DMS for RocketMQ基于 统一身份认证 服务(Identity and Access Management,简称 IAM ),支持三种身份认证方式:用户名密码、访问密钥、临时访问密钥。同时还提供登录保护及登录验证策略。
  • 测试环境 进行测试前,您需要先构建如下的测试环境: 购买如表1所示实例,购买步骤请参考购买实例。 表1 实例参数 名称 规格 代理数量 存储空间 ACL访问 公网访问 rocketmq-01 rocketmq.4u8g.cluster.small 1 高I/O 300GB 关闭 关闭 rocketmq-02 rocketmq.4u8g.cluster 1 高I/O 300GB 关闭 关闭 rocketmq-03 rocketmq.8u16g.cluster 1 高I/O 300GB 关闭 关闭 rocketmq-04 rocketmq.12u24g.cluster 1 高I/O 300GB 关闭 关闭 创建如表2所示Topic,创建步骤请参考创建Topic。 表2 Topic参数 名称 权限 关联代理 队列个数 topic-01 发布+订阅 broker-0 8 创建如表3所示消费组,创建步骤请参考创建消费组。 表3 消费组参数 名称 关联代理 最大重试次数 是否允许以广播模式消费 group-01 broker-0 16 否 购买1台E CS 服务器(区域、可用区、虚拟私有云、子网、安全组与RocketMQ实例保持一致,Linux系统),具体步骤请参考购买弹性云服务器。 在ECS中安装Java JDK,并配置JAVA_HOME与PATH环境变量。 export JAVA_HOME=/root/jdk1.8.0_231 export PATH=$JAVA_HOME/bin:$PATH 下载测试工具。 wget https://dist.apache.org/repos/dist/release/rocketmq/5.1.4/rocketmq-all-5.1.4-bin-release.zip 解压测试工具。 unzip rocketmq-all-5.1.4-bin-release.zip
  • 测试结果参考 表4 测试结果参考 性能指标 rocketmq.4u8g.cluster.small rocketmq.4u8g.cluster rocketmq.8u16g.cluster rocketmq.12u24g.cluster 消息生产速率 56532 个/秒 62443 个/秒 92476 个/秒 138369 个/秒 消息消费速率 53793 个/秒 60106 个/秒 90563 个/秒 116154 个/秒 网络入流量 91 MB/s 99.64 MB/s 143.64 MB/s 238.19 MB/s 网络出流量 223 MB/s 314 MB/s 451 MB/s 674 MB/s CPU使用率 86% 90% 81% 81% CPU核均负载 2.77 3.03 1.73 1.73 内存使用率 63% 55% 49% 47%
  • 测试命令 生产命令: sh producer.sh -n "${连接地址}" -t ${Topic名称} -s ${消息大小} -w ${生产者线程数} 连接地址:购买RocketMQ实例后,获取实例的连接地址。 Topic名称:创建Topic时设置的Topic名称。 消息大小:1KB 生产者线程数:测试rocketmq.4u8g.cluster.small、rocketmq.4u8g.cluster和rocketmq.8u16g.cluster时,生产者线程数输入256,测试rocketmq.12u24g.cluster时,生产者线程数输入640。 消费命令: sh consumer.sh -n "${连接地址}" -t ${Topic名称} -g ${消费组名称} 连接地址:购买RocketMQ实例后,获取实例的连接地址。 Topic名称:创建Topic时设置的Topic名称。 消费组名称:创建消费组时设置的消费组名称。
  • 测试环境 进行测试前,您需要先构建如下的测试环境: 购买如表1所示实例,购买步骤请参考购买实例。 表1 实例参数 名称 规格 存储空间 ACL访问 公网访问 rocketmq-01 rocketmq.b2.large.4 超高I/O 300GB 关闭 关闭 rocketmq-02 rocketmq.b2.large.8 超高I/O 300GB 关闭 关闭 rocketmq-03 rocketmq.b2.large.12 超高I/O 300GB 关闭 关闭 创建如表2所示Topic,创建步骤请参考创建Topic。 表2 Topic参数 名称 消息类型 topic-01 普通 创建如表3所示消费组,创建步骤请参考创建消费组。 表3 消费组参数 名称 最大重试次数 是否允许以广播模式消费 是否顺序消费 group-01 16 否 否 购买1台ECS服务器(区域、可用区、虚拟私有云、子网、安全组与RocketMQ实例保持一致,Linux系统),具体步骤请参考购买弹性云服务器。 在ECS中安装Java JDK,并配置JAVA_HOME与PATH环境变量。 export JAVA_HOME=/root/jdk1.8.0_231 export PATH=$JAVA_HOME/bin:$PATH 下载测试工具。 wget https://dms-demos.obs.cn-north-1.myhuaweicloud.com/rocketmq-tutorial.zip 解压测试工具。 unzip rocketmq-tutorial.zip
  • 测试结果参考 表4 测试结果参考 性能指标 rocketmq.b2.large.4 rocketmq.b2.large.8 rocketmq.b2.large.12 实例生产速率 1008.500 Count/s 2019.710 Count/s 3011.640 Count/s 实例消费速率 1008.520 Count/s 2019.710 Count/s 3010.590 Count/s 平均生产时延 26.336 ms 8.788 ms 5.876 ms
  • 测试命令 生产命令: sh producer.sh -n "${连接地址}" -t ${Topic名称} -s ${消息大小} -w ${生产者线程数} 连接地址:购买RocketMQ实例后,获取实例的连接地址。 Topic名称:创建Topic时设置的Topic名称。 消息大小:1KB 生产者线程数:256 消费命令: sh consumer.sh -n "${连接地址}" -t ${Topic名称} -g ${消费组名称} 连接地址:购买RocketMQ实例后,获取实例的连接地址。 Topic名称:创建Topic时设置的Topic名称。 消费组名称:创建消费组时设置的消费组名称。
  • 购买RocketMQ实例 进入购买RocketMQ实例页面。 选择“计费模式”。 包年/包月:您创建RocketMQ实例时,可以根据需要设置购买时长,系统会一次性按照购买价格进行扣费。 按需付费:您创建RocketMQ实例时,无需设置购买时长,系统会根据消费时长进行扣费。 选择“区域”。 不同区域的云服务产品之间内网互不相通。请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。 选择“项目”。 每个区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源)。 选择“可用区”。 可用区指在同一区域下,电力、网络隔离的物理区域,可用区之间内网互通,不同可用区之间物理隔离。 请根据实例版本和界面提示选择可用区数量。 设置“实例名称”。 名称支持自定义,但需要符合命名规则:长度为4~64个字符,由英文字母开头,且只能由英文字母、数字、中划线、下划线组成。 设置“企业项目”。 该参数针对企业用户使用。企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理,默认项目为default。 设置实例规格信息。 “规格选择模式”设置为“默认”,且“版本”为“4.8.0”时,您需要根据实际情况选择RocketMQ实例支持的规格、代理个数和代理存储空间。 部署架构:仅支持“集群”,保持默认值即可。 CPU架构:仅支持“x86计算”,保持默认值即可。 代理规格:根据实际业务情况选择实例规格。 代理数量:RocketMQ实例的代理个数。 代理存储空间:选择RocketMQ实例的磁盘类型和单个代理的储存空间。 磁盘类型支持高I/O、超高I/O、通用型SSD和极速型SSD,如何选择磁盘类型请参考磁盘类型及性能介绍。 图1 默认的规格类型(RocketMQ实例4.8.0版本) “规格选择模式”设置为“默认”,且“版本”为“5.x”时,您需要根据实际情况选择RocketMQ实例支持的规格和存储空间。 实例类型:支持“基础版”和“专业版”,保持默认值即可。 专业版目前还处于公测阶段。 部署架构:支持“单机”和“集群”。 单机:表示部署一个RocketMQ。基础版的单机仅用于测试环境,不可用于生产环境。 集群:表示部署多个RocketMQ。 CPU架构:仅支持“x86计算”,保持默认值即可。 实例规格:根据实际业务情况选择实例规格。 存储空间:选择RocketMQ实例的磁盘类型和储存空间总量。 磁盘类型支持高I/O、超高I/O、通用型SSD和极速型SSD,如何选择磁盘类型请参考磁盘类型及性能介绍。 “规格选择模式”设置为“规格测算”(仅4.8.0版本支持该种模式)时,系统根据您输入的参数(Topic个数、生产tps峰值、消费tps峰值、平均消息大小和日生产消息数),为您计算出不同规格所需的代理个数和代理存储空间,您根据实际情况选择。 图2 规格测算 设置实例网络环境信息。 在“虚拟私有云”下拉列表,选择已经创建好的或共享的虚拟私有云和子网。 虚拟私有云可以为您的RocketMQ实例构建隔离的、能自主配置和管理的虚拟网络环境。 虚拟私有云和子网在RocketMQ实例创建完成后,不支持修改。 设置IPv6开关。 仅当子网选择了支持IPv6地址后,才会显示该参数。开启IPv6后,客户端可以使用IPv6的内网连接地址连接实例。 此功能仅在“华东二”区域上线,且仅4.8.0版本支持创建IPv6实例。 实例创建成功后,不支持修改IPv6开关。 使用内网IPv6方式连接实例需要通过 VPC终端节点 实现,使用期间会产生VPC终端节点的费用,收费标准请参考计费说明。 在“安全组”下拉列表,可以选择已经创建好的安全组。 安全组是一组对RocketMQ实例访问规则的集合。 设置SSL。 SSL:服务端与客户端之间通过密文传输,安全性较高,性能较低。 PLAINTEXT:服务端与客户端之间通过明文传输,安全性较低,性能较高。 PERMISSIVE:服务端与客户端之间即能通过明文传输又能通过密文传输,传输方式由客户端决定。 实例创建后,SSL开关支持修改,请根据实际情况选择一种数据传输模式。 设置ACL访问控制。 开启ACL访问控制后,为不同用户赋予不同的Topic和消费组权限,以达到用户之间的权限隔离。 设置实例购买时长。 当选择了“包年/包月”付费模式时,页面才显示“购买时长”参数,您需要根据业务需要选择。 单击“更多配置”,设置更多相关信息。 设置“公网访问”。 “公网访问”默认为关闭状态,您可以选择是否开启。开启公网访问后,还需要为RocketMQ实例设置对应的IPv4弹性IP地址。 设置标签。 标签用于标识云资源,当您拥有相同类型的许多云资源时,可以使用标签按各种维度(例如用途、所有者或环境)对云资源进行分类。 如您的组织已经设定分布式消息服务RocketMQ版的相关标签策略,则需按照标签策略规则为RocketMQ实例添加标签。标签如果不符合标签策略的规则,则可能会导致RocketMQ实例创建失败,请联系组织管理员了解标签策略详情。 如果您已经预定义了标签,在“标签键”和“标签值”中选择已经定义的标签键值对。另外,您可以单击右侧的“查看预定义标签”,跳转到标签管理服务页面,查看已经预定义的标签,或者创建新的标签。 您也可以直接在“标签键”和“标签值”中设置标签。 每个RocketMQ实例最多支持设置20个不同标签,标签的命名规格,请参考配置RocketMQ实例标签章节。 设置实例的描述信息。 填写完上述信息后,单击“立即购买”,进入规格确认页面。 确认实例信息无误且阅读并同意《华为云用户协议》后,如果“计费模式”选择“包年/包月”,单击“去支付”。根据界面提示信息,支付费用。如果“计费模式”选择“按需付费”,单击“提交”。 在实例列表页面查看实例是否创建成功。 创建实例大约需要3到15分钟,此时实例的“状态”为“创建中”。 当实例的“状态”变为“运行中”时,说明实例创建成功。 当实例的“状态”变为“创建失败”,请参考删除RocketMQ实例,删除创建失败的实例,然后重新创建。如果重新创建仍然失败,请联系客服。
  • 准备实例依赖资源 在购买RocketMQ实例前,您需要提前准备相关依赖资源,包括虚拟私有云(Virtual Private Cloud,以下简称VPC)、子网和安全组,并配置安全组策略。每个RocketMQ实例都部署在某个VPC中,并绑定具体的子网和安全组,通过这样的方式为RocketMQ提供一个隔离的、用户自主配置和管理的虚拟网络环境以及安全保护策略,提升实例的安全性。 RocketMQ实例所需资源的具体要求和创建指导如表1所示。 表1 RocketMQ实例依赖资源 准备资源 要求 创建指导 VPC和子网 RocketMQ实例可以使用当前账号下已创建的VPC和子网,也可以使用新创建的VPC和子网,还可以使用共享VPC和子网,请根据实际需要进行配置。 共享VPC是基于 资源访问管理 (Resource Access Manager,简称 RAM )服务的机制,VPC的所有者可以将VPC内的子网共享给一个或者多个账号使用。通过共享VPC功能,可以简化网络配置,帮助您统一配置和运维多个账号下的资源,有助于提升资源的管控效率,降低运维成本。有关VPC子网共享的更多信息,请参见共享VPC。 在创建VPC和子网时应注意如下要求: 创建的VPC与使用的RocketMQ实例应在相同的区域。 创建VPC和子网时,配置参数建议使用默认配置。 创建VPC和子网的操作指导请参考创建虚拟私有云和子网,若需要在已有VPC上创建和使用新的子网,请参考为虚拟私有云创建新的子网。 安全组 不同的RocketMQ实例可以重复使用相同的安全组,也可以使用不同的安全组,请根据实际需要进行配置。 使用RocketMQ实例必须添加表2或表3所示安全组规则,其他规则请根据实际需要添加。 说明: 创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问RocketMQ实例,无需添加表2或表3的规则。 创建安全组的操作指导请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则。 弹性IP地址 开启公网访问时,才需要配置弹性IP地址。 在创建弹性IP地址时,应注意如下要求: 创建的弹性IP地址与RocketMQ实例在相同的区域。 RocketMQ控制台无法识别开启IPv6转换功能的弹性IP地址。 创建弹性IP地址的操作指导请参考申请弹性公网IP。 表2 安全组规则(RocketMQ实例4.8.0版本) 方向 协议 端口 源地址 说明 入方向 TCP 8100 0.0.0.0/0 使用TCP协议,通过内网访问元数据节点的端口。 入方向 TCP 8200 0.0.0.0/0 使用TCP协议,通过公网访问元数据节点的端口。 入方向 TCP 10100-10199 0.0.0.0/0 使用TCP协议,访问业务节点的端口。 表3 安全组规则(RocketMQ实例5.x版本) 方向 协议 端口 源地址 说明 入方向 TCP 8100 0.0.0.0/0 使用TCP协议,通过内网访问实例的端口。 入方向 TCP 8200 0.0.0.0/0 使用TCP协议,通过公网访问实例的端口。 入方向 TCP 10100-10199 0.0.0.0/0 使用TCP协议,访问业务节点的端口。 入方向 TCP 8080 0.0.0.0/0 使用gRPC协议,通过内网访问实例的端口。 入方向 TCP 8081 0.0.0.0/0 使用gRPC协议,通过公网访问实例的端口。