倚天使用|Redis性能高30%,阿里云倚天ECS性能摸底和迁移实践

简介: Redis在倚天ECS环境下与同规格的基于 x86 的 ECS 实例相比,Redis 部署在基于 Yitian 710 的 ECS 上可获得高达 30% 的吞吐量优势。成本方面基于倚天710的G8y实例售价比G7实例低23%,总性价比提高50%;按照相同算法,相对G8a,性价比为1.4倍左右。

简介

Redis(Remote Dictionary Server)是一种开源的内存型数据存储,通常被用作数据库缓存系统。 它广泛用于医疗卫生系统、物联网和金融服务等实时应用行业。 Redis具有高度可扩展性,可用于实时分析、缓存、发布/订阅应用程序和会话管理。

Redis是一种Key-Value的No SQL数据库,性能是Mysql的10-100倍;支持多种数据类型(String、Hash、List、set、zset...),支持通过CLI、API、GUI等方式读写。与SQL数据存储在磁盘不同,Redis数据在内存中。倚天ECS采用DDR5内存,可获得比DDR4高50%带宽,实现更高性能的读写性能。同时在超高并发下,物理核+大Cache设计比传统的Hyper thread的共享ALU和cache,可获得更好的性能。

生产环境中,一般采用R系列(内存:CPU=8),在本文中,我们在阿里云 ECS G8y 实例(基于 Armv9 的倚天 710 处理器)和G7 实例(x86)上做了Redis的吞吐量测试对比,以展示倚天 710 的性能优势。

架构和环境

我们使用 memtier_benchmark作为负载生成器和性能基准测试工具。 它是 Redis Labs 为 Redis 构建的开源高吞吐量基准测试工具。 memtier_benchmark 部署在单独的 ECS 实例上。

对于Redis服务器,我们在4xlarge实例部署了16个Redis进程,并组成Redis集群模式,测试拓扑如下。16个Redis进程通过绑核方式使其调度多个CPU上,充分发挥每个Core能力,部署架构如下

图1. Redis部署架构-基准测试拓扑

两种被测ECS实例类型配置如下。基准测试客户端使用了一个单独的G8y.16xlarge实例。

Processor

ECS type

Yitian 710

G8y.4xlarge

x86 CPU

G7.4xlarge

表1.1 测试ECS实例规格

Redis软件版本和测试参数。

Component name

Version

Redis

5.0.12

GCC version

10.2.1 20200825 (Alibaba 10.2.1-3 2.32)

Memtier benchmarking tool

1.3.0

Operating System

Alibaba Cloud Linux 3.2104 LTS

表1.2 Redis软件版本

Test config parameter

Value

Number of Memtier clients

2

Number of threads

32

Number of consecutive tests runs

3

Data size

random

Data size pattern

S

Protocol

Redis

Key pattern

G:G

Reading and writing ratio

1:1

Test time

60

Cluster-mode

Yes

Pipeline

1

表1.3 Redis测试参数

性能优化和测试结果

测试脚本

memtier_benchmark -s $redis_server_ip -p 7001 --random-data

  --data-size-pattern=S --key-minimum=200 --key-maximum=100000

  --key-pattern=G:G --cluster-mode --clients=2 --threads=32

  --ratio=1:1 --test-time=60

Redis-server运行在4xlarge实例上,16个进程组成一个集群,redis proxy 端口为7001,压测端使用16xlarge实例进行压测,memtier_benchmark创建2clients 32threads对redis 集群发送请求,相当于64个并发请求,每条请求会通过7001端口所在redis进程均衡到集群上。

通过在倚天上启用Booster加速,包括XPS (Transmit Packet Steering)以及中断调优手段, Yitian 710 与同规格的 x86 的 ECS 实例相比,Redis 数据库的吞吐量性能优势高达 35% 。下表中显示的结果是 5 次连续测试运行的汇总结果。

Redis性能优化方案通过ECS Booster一键开启。在实例创建阶段,选择倚天实例G8y,选择Alinux操作系统,勾选加速选项“redis加速”即可。

图2. ECS Booster一键加速功能开启

采用Booster加速,可以大幅度提升性能Redis 在 G8y 和 G7 实例上的性能数据如下:

调优措施

G7.4xlarge

(Requests/sec)

G8y.4xlarge 

(Requests/sec)

Perf benifit gain

 (%)

基础

2252137

2307270

2%

Booster开启redis加速

2252137 

(无加速开关)

3046344

35%

表2. (G8y vs. G7) Redis 吞吐量性能数据

优化前后的性能测试表格如下:

图3. (G8y vs. G7) Redis吞吐量性能优势

平台选择决策

为了帮助用户决策,我们还测试了Redis6在最新主流场景的性能,在多款ECS产品中对比性能见图(8vcpu,其他参数与前文相同)

图4. Redis ECS多代实例性能横向对比

另外,第八代ECS支持eRDMA,有效减少内存拷贝,降低网络时延,提升吞吐量,能帮助Redis大幅度提升处理性能;下图为阿里某客户业务性能。

图5,R8y.xlarge,4c32g规格下Redis qps性能数据

  • 注意事项:
  • Redis:4、5、6、7版本在倚天上均可直接运行,优化后性能都具备性能优势。(其他OS请联系服务支持优化)
  • Booster加速:默认对Alinux3环境加速,默认安装redis6(可自行更换版本)
  • 实例推荐:鉴于Redis消耗内存容量大,建议使用R系列内存型实例;
  • 不适用场景:vcpu资源部分闲置场景。比如x86场景下,2HT只使用1个进程,导致1HT闲置,如更换为ARM服务器性能不具备优势(只发挥50%物理核能力)

总结

Redis是数据库加速方案最流行开源软件。适合电商、网站、博客等应对突发、大流量访问,需要数千台的部署。与同规格的基于 x86 的 ECS 实例相比,Redis部署在基于 Yitian 710 的 ECS 上可获得超过30%吞吐量性能优势。成本方面基于倚天710的G8y实例售价比G7实例低23%,总性价比提高50%;按照相同算法,相对G8a,性价比为1.4倍左右。

好啦!小弹的分享到此为止。我们更欢迎您分享您对阿里云产品的设想、对功能的建议或者各种吐槽,请扫描提交问卷并获得社区积分或精美礼品一份。https://survey.aliyun.com/apps/zhiliao/P4y44bm_8

【扫码填写上方调研问卷】

欢迎每位来到弹性计算的开发者们来反馈问题哦~

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
弹性计算 运维 安全
阿里云轻量应用服务器和经济型e实例区别及选择参考
目前在阿里云的活动中,轻量应用服务器2核2G3M带宽价格为82元1年,2核2G3M带宽的经济型e实例云服务器价格99元1年,对于云服务器配置和性能要求不是很高的阿里云用户来说,这两款服务器配置和价格都差不多,阿里云轻量应用服务器和ECS云服务器让用户二选一,很多用户不清楚如何选择,本文来说说轻量应用服务器和经济型e实例的区别及选择参考。
阿里云轻量应用服务器和经济型e实例区别及选择参考
|
23天前
|
机器学习/深度学习 存储 人工智能
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考
阿里云的GPU云服务器产品线在深度学习、科学计算、图形渲染等多个领域展现出强大的计算能力和广泛的应用价值。本文将详细介绍阿里云GPU云服务器中的gn6v、gn7i、gn6i三个实例规格族的性能特点、区别及选择参考,帮助用户根据自身需求选择合适的GPU云服务器实例。
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考
|
16天前
|
弹性计算 人工智能 安全
阿里云推出第九代ECS实例,最高提升30%性能
阿里云推出第九代ECS实例,最高提升30%性能
123 14
|
16天前
|
人工智能 运维 Cloud Native
专访阿里云:AI 时代服务器操作系统洗牌在即,生态合作重构未来
AI智算时代,服务器操作系统面临的挑战与机遇有哪些?
专访阿里云:AI 时代服务器操作系统洗牌在即,生态合作重构未来
|
5天前
|
存储 缓存 NoSQL
深入探究Redis的AOF持久化:保障数据安全与恢复性能的关键机制
深入探究Redis的AOF持久化:保障数据安全与恢复性能的关键机制
15 0
|
8天前
|
网络协议 Windows
[收藏]优化基于Win 2000系统的Web服务器性能
[收藏]优化基于Win 2000系统的Web服务器性能
|
NoSQL Redis
Redis 发布性能增强版
信息摘要: Redis 推出网络IO线程优化版Redis,有效提升Redis单节点处理能力,QPS为社区版3倍。适用客户: 超高并发业务场景的客户。版本/规格功能: Redis 发布内核优化性能增强版,综合性能提升300%,解决高并发大流量场景下的缓存瓶颈问题。产品文档: 无
2370 0
|
21天前
|
canal 缓存 NoSQL
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
根据对一致性的要求程度,提出多种解决方案:同步删除、同步删除+可靠消息、延时双删、异步监听+可靠消息、多重保障方案
Redis缓存与数据库如何保证一致性?同步删除+延时双删+异步监听+多重保障方案
|
2月前
|
缓存 NoSQL Java
Redis深度解析:解锁高性能缓存的终极武器,让你的应用飞起来
【8月更文挑战第29天】本文从基本概念入手,通过实战示例、原理解析和高级使用技巧,全面讲解Redis这一高性能键值对数据库。Redis基于内存存储,支持多种数据结构,如字符串、列表和哈希表等,常用于数据库、缓存及消息队列。文中详细介绍了如何在Spring Boot项目中集成Redis,并展示了其工作原理、缓存实现方法及高级特性,如事务、发布/订阅、Lua脚本和集群等,帮助读者从入门到精通Redis,大幅提升应用性能与可扩展性。
60 0
|
22天前
|
存储 NoSQL Redis
SpringCloud基础7——Redis分布式缓存,RDB,AOF持久化+主从+哨兵+分片集群
Redis持久化、RDB和AOF方案、Redis主从集群、哨兵、分片集群、散列插槽、自动手动故障转移
SpringCloud基础7——Redis分布式缓存,RDB,AOF持久化+主从+哨兵+分片集群

相关产品

  • 云服务器 ECS
  • 下一篇
    无影云桌面