RDS MySQL大促场景下的智能化弹性

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS AI 助手,专业版
简介: RDS MySQL支持通过数据库代理实现读写分离,通过DAS实现智能化伸缩控制,适配高流量、高并发的大促场景。

RDS MySQL大促场景下的智能化弹性

1. 选择实验资源

在实验开始前,请您选择其中一种实验资源,单击确认开启实验。

说明:

如果您选择的是开通免费试用,下方卡片会展示本实验支持的试用规格,可以选择你要试用的云产品资源进行开通。您在实验过程中,可以随时用右下角icon唤起试用卡片。

说明:

阿里云支持试用的产品列表、权益及具体规则说明请参考开发者试用中心

2. 创建资源

如果您已创建云服务器ECS、云数据库RDS,请您选择个人账户资源,并跳过本小节,直接进行实验操作即可。

如果您已创建云服务器ECS、云数据库RDS,请您选择个人账户资源,并跳过本小节,直接进行实验操作即可。

本步骤仅作为参考使用,您可以根据需求自行选择配置。

如果您选择的是开通免费试用,参考以下步骤云服务器ECS、云数据库RDS。

在本实验页面下方卡片会展示本实验支持的试用规格,依次选择一个试用规格,单击立即试用。

在云服务器ECS试用开通页面,根据页面引导进行开通云服务器ECS,其中操作系统选择CentOS 7.8 64位,地域需要与云数据库RDS MySQL Serverless在同一地域下,其他配置根据您的需求自行选择即可。在云数据库RDS MySQL Serverless试用开通页面,根据页面引导进行开通云数据库RDS MySQL Serverless,其中数据库类型选择MySQL,数据库版本号选择5.7,地域需要与云服务器ECS在同一地域下,其他配置根据您的需求自行选择即可。

如果您选择的是个人账户资源,参考以下步骤云服务器ECS、云数据库RDS和数据传输服务DTS。

创建云服务器ECS。

,在概览页面的我的资源区域,单击创建实例。云服务器ECS控制台前往在云服务器ECS购买页面,根据页面引导进行开通云服务器ECS,其中操作系统选择CentOS 7.8 64位,地域需要与云数据库RDS MySQL Serverless在同一地域下,其他配置根据您的需求自行选择即可。

创建云数据库RDS MySQL Serverless。

云数据库RDS创建页面前往在云数据库RDS创建页面,根据页面引导进行开通云数据库RDS MySQL Serverless,其中数据库类型选择MySQL,数据库版本号选择5.7,地域需要与云服务器ECS在同一地域下,其他配置根据您的需求自行选择即可。

3. 安装压测工具,准备模拟数据

您需要在ECS上安装压测工具,并准备模拟数据。本案例以8 vCPU 16 GiB规格的ECS实例为例。

1. 登录ECS。

1)登录ECS控制台,左侧菜单选择实例,点击开通的实例ID名称。

2)单击远程连接。

3)可选择Workbench远程连接方式,单击立即登录。

在ECS上执行如下命令,完成压测工具SysBench的安装。

安装Sysbench。

yum install sysbench

执行如下命令配置SysBench Client,使内核可以使用所有的CPU处理数据包(默认设置为使用2个CPU),同时减少CPU之间的上下文切换。

sudo sh -c 'for x in /sys/class/net/eth0/queues/rx-*; do echo f>$x/rps_cpus; done'
sudo sh -c 'echo 32768 > /proc/sys/net/core/rps_sock_flow_entries'
sudo sh -c 'echo 4096 > /sys/class/net/eth0/queues/rx-0/rps_flow_cnt'

说明:ff表示使用8个CPU(1个f表示4个CPU)。请根据实际配置修改,例如本案例中ECS为4核CPU,因此输入f。

,在RDS MySQL中创建一个名为dbfortest的空数据库。RDS 控制台

在ECS中,执行如下命令,准备压测数据。

sysbench --db-driver=mysql --mysql-host=xxx --mysql-port=xxx --mysql-user=xxx --mysql-password=****** --mysql-db=dbfortest --table_size=10000 --tables=250 --report-interval=1 --events=0  oltp_read_write prepare

涉及到的参数说明如下:

参数

说明

mysql-user

RDS MySQL实例账号。该账号需关联dbfortest数据库。

mysql-password

RDS MySQL实例账号对应的密码。

mysql-host

RDS MySQL实例连接地址。

可进入实例的数据库连接页面获取(申请外网)。

mysql-port

RDS MySQL实例连接端口。

可进入实例的数据库连接页面获取。

该命令会自动在RDS MySQL预先创建的dbfortest数据库中创建N个名为sbtest1、sbtest2……sbtestN的表(N为tables参数指定的表数量),其表结构如下,供您了解:

CREATE TABLE `sbtestN` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `k` int(11) NOT NULL DEFAULT '0',
  `c` char(120) NOT NULL DEFAULT '',
  `pad` char(60) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`),
  KEY `k_100` (`k`)
) ENGINE=InnoDB AUTO_INCREMENT=25001 DEFAULT CHARSET=utf8

4. 开启自动性能扩展

您可为RDS MySQL实例开启自动性能扩展功能,实现资源智能化的扩容和缩容。

说明:

为了防止智能化自动扩缩失败,生产中请在账户中留有一定余额。RDS自动扩展期间会有5-30s闪断。为了安全起见,自动扩展后,需要自主进行回缩操作(可在设置自动扩展时,同步设置消息订阅通知),自动回缩功能即将上线。

,点击实例ID进入实例详情页。RDS 控制台登录在左侧导航栏中,单击自治服务>性能趋势。单击右侧自治功能开关。在自治中心开关对话框中,将自动性能扩展设置成开启状态,并配置其他参数,设置智能资源扩缩监控条件。

5. 模拟压测

本步骤需要在ECS控制台中,登录ECS实例,运行相关命令,使用压测工具SysBench模拟流量注入。

执行如下命令,运行压测程序。

sysbench --db-driver=mysql --mysql-host=xxx --mysql-port=3306 --mysql-user=xxx --mysql-password=****** --mysql-db=dbfortest --table_size=10000 --tables=250 --events=0 --time=3600   --threads=64 --percentile=95 --report-interval=1 --db-ps-mode=disable oltp_read_write run

需要设置的参数说明如下:

参数

说明

mysql-host

RDS MySQL实例连接地址。可进入实例的数据库连接页面获取。

mysql-port

RDS MySQL实例连接端口。可进入实例的数据库连接页面获取。

mysql-user

RDS MySQL实例账号,该账号需关联dbfortest数据库。

mysql-password

RDS MySQL实例账号对应的密码。

进入RDS MySQL实例的监控与报警页面,观察资源使用情况,等待触发条件达成。

6. 查看智能化弹性效果

本步骤需要在RDS 控制台中评估RDS MySQL的弹性效果。

前往 一键诊断 > 自治中心,勾选弹性伸缩事件,开启自动刷新。观察近1小时的CPU变化以及是否有弹性伸缩事件发生。RDS 控制台登录

查看事件具体内容,关注如下四个结果:

原规格推荐规格执行状态相关信息

打开实例基本信息页,查看实例规格升级结果。

至此,您通过RDS MySQL以及DAS的数据库产品组合,已经实现了数据库的弹性智能化,可以帮助您更好的应对高并发、高负载下的潮汐,以及实现IT资源成本最优利用率。

实验链接:https://developer.aliyun.com/adc/scenario/a321d319732c4432a676007ea3ff06f3

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
4月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
948 152
|
4月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
789 156
|
5月前
|
存储 SQL 关系型数据库
RDS DuckDB技术解析一:当 MySQL遇见列式存储引擎
RDS MySQL DuckDB分析实例以​列式存储与向量化计算​为核心,实现​复杂分析查询性能百倍跃升​,为企业在海量数据规模场景下提供​实时分析能力​,加速企业数据驱动型决策效能。​​
|
4月前
|
人工智能 关系型数据库 Java
当MySQL遇见AI:使用Vector扩展实现智能语义搜索
传统数据库的关键词搜索已无法满足现代应用对智能语义查询的需求。本文介绍如何通过MySQL的向量扩展(Vector Extension),将大模型产生的文本嵌入向量存储在MySQL中,并实现高效的语义相似度搜索。我们将完整演示从环境准备、数据库表设计、Java应用集成到性能优化的全流程,让您的传统关系型数据库瞬间具备AI智能检索能力,为构建下一代智能应用提供核心数据支撑。
534 3
|
4月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
4月前
|
SQL 关系型数据库 MySQL
Mysql数据恢复—Mysql数据库delete删除后数据恢复案例
本地服务器,操作系统为windows server。服务器上部署mysql单实例,innodb引擎,独立表空间。未进行数据库备份,未开启binlog。 人为误操作使用Delete命令删除数据时未添加where子句,导致全表数据被删除。删除后未对该表进行任何操作。需要恢复误删除的数据。 在本案例中的mysql数据库未进行备份,也未开启binlog日志,无法直接还原数据库。
|
4月前
|
关系型数据库 MySQL 数据库
云时代MySQL:RDS与自建数据库的抉择
在云计算时代,选择合适的数据库部署方案至关重要。本文深入对比了AWS RDS与自建MySQL的优劣,帮助您在控制权、运维成本和业务敏捷性之间找到最佳平衡点。内容涵盖核心概念、功能特性、成本模型、安全性、性能优化、高可用方案及迁移策略,为您提供全面的决策参考。
|
5月前
|
关系型数据库 MySQL 程序员
从自建MySQL到阿里云RDS:程序员的数据库减负革命
如果你正在为自建MySQL数据库的高成本运维发愁,为凌晨三点的主从同步故障告警而崩溃,为开发团队频繁索要新测试库的要求感到窒息——是时候开启一场数据库的自我救赎了。 程序员更需构建"技术敏锐度+工程落地能力+跨域协作"的三维竞争力,通过创建技术组合形成差异化优势。企业应建立持续学习机制,提供AI沙盒环境促进技术转化。
|
4月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
424 158
|
4月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。

相关产品

  • 云数据库 RDS MySQL 版
  • 云数据库 RDS
  • 推荐镜像

    更多