前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >实战性价比,腾讯Arm云实例评测 - Web 应用

实战性价比,腾讯Arm云实例评测 - Web 应用

原创
作者头像
DavidZ
修改2022-06-20 12:00:45
7.4K4
修改2022-06-20 12:00:45
举报
文章被收录于专栏:云实例评测云实例评测

腾讯CVM标准型SR1是腾讯云服务器推出的首款搭载ARM架构处理器的新一代CVM标准型计算实例规格。SR1基于全核一致主频3.0GHz的Ampere Altra处理器,实例核数从1核到64核,并支持1: 2、1: 4等多种处理器与内存配比,相对x86架构实例为用户提供卓越的性价比。

本文将针对Web应用中多个核心工作负载对SR1的性能与最新的x86架构的S6(Intel Icelake)实例进行实测对比,从而为SR1在Web应用场景下的性价比优势较为全面的数据参考。

Web应用的简介

Web 服务是基于开放标准(XML、SOAP、HTTP 等)的 Web 应用程序,它可以独立于实现它的硬件或软件平台使用,也可以独立于编写它的编程语言。 这种独立性决定了基于 Web 服务的应用程序是松散耦合的、面向组件的、使用容器化微服务的实现。

随着云计算的发展和云服务器的弹性优势,Web应用的更高级形式基于云的应用已经成为主流。作为“进化”的 Web 应用程序,基于云的应用程序通常具有高级功能,访问更广泛的服务,为其客户提供基于业务逻辑的动态内容。现今这类Web应用的典型代表如社交应用,互动媒体平台,电子商务网站,在线数字服务,以及万物互联的IoT系统。

Web 应用程序是客户端-服务器框架系统,客户端是指个人用来运行应用程序的程序。它可以是浏览器,也可能是需要独立安装运行的软件,比如手机上的APP,微信小程序,或者电脑客户端等。

在云化应用中,“服务器”端是云,是基于微服务架构的云原生模式,其中单个服务由许多松散耦合且可独立部署的较小组件或服务组成。 基于微服务的Web应用程序架构将传统的单体应用程序分解为其组件功能,应用程序功能不再部署在单一代码源中。微服务架构将每个功能隔离为一个小型、自主运行的应用程序(即微服务),该应用程序通常在容器化环境中运行,以进行更轻量级的部署和执行。

整个堆栈逻辑上可分为三层,即前端(Frontend)通过负载均衡服务器将用户请求路由到后端,然后是松耦合模块化的业务逻辑层,最后是数据缓存和存储层。

本次评测将选择NGINX,Redis和MySQL三个在Web服务系统中最为关键的工作负载,他们的性能数据可以直接反映出SR1云服务器在Web应用场景下的表现。

测试环境

为了尽可能全面地了解全新架构实例SR1在Web应用下的整体表现,本文将在2种不同大小实例上进行测试,具体实例配置如下:

NGINX 是一个开源的高性能 HTTP 服务器和反向代理,捆绑了许多其他与 Web 服务相关的功能。 NGINX 在许多流行的高流量网站中常用作负载均衡器、反向代理和 http 服务器。它使用复杂的事件驱动架构,使其能够支持数十万个并发连接。NGINX 性能可以反应Web应用的业务处理能力和用户并发容量。下图为测试实例下的测试配置。

Redis 是一种开源的内存键值数据结构存储,用作数据库、缓存、消息代理和流引擎。在众多Web 服务基础设施Redis都是主流选项。根据 DB-Engines.com 的月度排名,Redis也 是最受欢迎的键值存储系统。

MySQL是关系型数据库管理系统,也是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统) 应用软件之选。

测试结果

为了数据更加直观,本文将基于英特尔IceLake CPU的S6云实例作为比较基准,即100%,SR1实例数据取相对比例。

首先是NGINX在8 vCPU实例上的数据,本测试中以5ms的P99延迟SLA下的每秒HTTPS请求数为性能指标。在性能上,基于Ampere Altra CPU的8核SR1实例相比S6高出35%;如果考虑价格因素,以一年计费价格, SR1相对S6实例的性价比

高出77%。

在16 vCPU的实例配置下稍有变化,SR1的性能相对S6扩大5%达到40%,而性价比提升

达到85%。

接下来是Redis的数据,与NGINX的比较方法类似,测试中以1ms的P99延迟SLA下的每秒请求处理数量为性能指标。在8 vCPU实例上的性能,SR1高于基准S6实例14%。同样加入价格因素,看性价比,则SR1在Redis的性价比相对基准S6高50%以上。

在 16 vCPU 实例中, SR1 比 S6 的性能提升 8%,性价比提升 43% 。

最后,我们看一下MySQL的数据。本测试中性能以对算力,存储综合要求更高的oltp_read_write负载,在100ms的P95延迟SLA下的每秒查询数量为性能指标。加入价格因素的性价比,SR1比S6实例的优势保持在46%(8 vCPU实例)和51%(16 vCPU 实例)。

总结

综合三种Web应用程序中关键的工作负载测试数据,可以基本判断基于SR1实例的Web应用相比S6实例,平均会有50%以上的性价比提升。这就意味着Web应用的软件服务提供商可以用同样的成本提供超过1.5倍的业务处理能力,或者说在保持现有的业务量的情况下,采用SR1 实例相对S6可以使用更少的云服务器,节省33%以上的绝对成本。

最后,关于Web应用在Arm架构上部署几乎与x86的平台无异。就本次评测的三个关键工作负载在SR1上安装也非常顺利。NGINX直接采用Yum安装运行,对于Redis和MySQL也可以通过Yum方式安装,但这次的评测中为了性能的考虑,重新编译了源代码,但不需任何源码修改,wget下载源代码,然后配置正确的编译参数,编译即可。

Ampere Computing免费试用计划为开发者开放了SR1实例的申请通道,有兴趣的同学可以通过该计划免费试用SR1实例,亲自体验全新架构算力平台。

另外,开发者也可以从Ampere解决方案网站上获取开发语言,应用程序以及工具软件包等大量可直接使用的,在Arm架构编译后的兼容镜像信息,基本覆盖了绝大部分云原生开发所需的资源。

附录

软件版本,安装,配置信息。

软件

版本信息

安装方式

Nginx

1.14.1

sudo yum install nginx -y

Wrk

4.2.0

wget https://github.com/wg/wrk/archive/refs/tags/4.2.0.tar.gz tar zxvf 4.2.0.tar.gz cd wrk-4.2.0/ make -j`nproc`

MySQL

8.0.27

wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.27.tar.gz tar zxvf mysql-8.0.27.tar.gz mkdir build; cd build OPT_FLAGS="-g -O3 -fno-omit-frame-pointer -march=armv8.2-a -DNDEBUG" cmake ../mysql-8.0.27 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=../BOOST -DCMAKE_C_FLAGS_RELWITHDEBINFO="$OPT_FLAGS" -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$OPT_FLAGS" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_UNIT_TESTS=OFF -DCMAKE_INSTALL_PREFIX=$MYSQL_INSTALL_DIR make -j`nproc` sudo make install

sysbench

master

wget https://github.com/akopytov/sysbench/archive/refs/heads/master.zip unzip master cd sysbench-master ./autogen.sh ./configure make -j`nproc` sudo make install

Redis

6.2.1

wget https://github.com/redis/redis/archive/refs/tags/6.2.1.tar.gz tar -xvzf 6.2.1.tar.gz cd redis-6.2.1" make CFLAGS="-DUSE_PROCESSOR_CLOCK -march=armv8.2-a"

Memtier

master

git clone https://github.com/RedisLabs/memtier_benchmark cd memtier_benchmark git checkout 793d74dbc09395dfc241342d847730a6197d7c0c autoreconf -ivf ./configure make -j`nproc`

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Web应用的简介
  • 测试环境
  • 测试结果
  • 总结
  • 附录
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档