云数据库智能化弹性助力电商业务降本增效

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: 本场景介绍阿里云RDS MySQL通过其强大的数据库能力以及生态,适配高流量、高并发的业务场景,通过数据库代理实现无需业务改造的读写分离能力,通过数据库自治服务实现智能化伸缩控制。

云数据库智能化弹性助力电商业务降本增效

1. 添加只读实例,扩展查询能力

添加只读实例,扩展查询能力

本步骤需要在RDS 控制台页面中,为RDS实例添加只读节点。

登录RDS控制台,找到需要添加只读节点的主实例,点击实例ID进入实例详情。

在实例的基本信息页,单击只读实例数量旁的添加或添加只读实例按钮。

开通只读实例,实例配置如下。

计费方式:可选包年包月或按量付费。若您仅为体验该操作,建议选择按量付费。

可用区:默认为主实例所在的地域,选择默认可用区即可。

按需配置CPU与内存资源,存储空间必须大于或者等于原实例空间。

说明:只读实例也为高可用架构,采用主备方式实例网络配置。

选择网络类型、VPC、节点交换机。

勾选服务协议,开通只读实例。

2. 开启主实例读写分离

开启主实例读写分离

本步骤需要在RDS 控制台页面中,通过数据库代理完成无需业务改造的RDS MySQL读写分离能力。

进入RDS MySQL主实例的实例信息详情页。

在数据库代理 > 代理终端(原读写分离)页签下,单击设置代理终端。

在弹窗中设置相关参数。

读写属性:读写:自动将写请求路由到主节点,读请求到只读节点。

只读:不接受任何写请求,只能对读请求进行路由。

配置完成后,在数据库代理页面查看当前查询请求负载均衡拓扑图。

在数据库代理页面查看用于连接应用的数据库代理的地址。

3. 开启DAS自治服务和自动性能扩展

开启DAS自治服务和自动性能扩展

您需要购买DAS专业版,并将RDS MySQL实例添加至DAS专业版服务中。之后,您可为该RDS MySQL实例开启自动性能扩展功能,实现资源智能化的扩容和缩容。

说明:

为了防止智能化自动扩缩失败,生产中请在账户中留有一定余额。

RDS自动扩展期间会有5-30s闪断。

为了安全起见,自动扩展后,需要自主进行回缩操作(可在设置自动扩展时,同步设置消息订阅通知),自动回缩功能即将上线。

,根据界面提示选择对应参数,购买DAS专业版。DAS专业版购买页面登录

左侧导航栏,选择DAS专业版管理,单击页面右上角新增实例。DAS控制台

在选择实例的搜索框里输入需要使用DAS专业版管理的RDS实例ID,勾选已查询出来的实例,添加至右侧区域。

单击确定后页面会提示新增成功,可到已使用实例列表页面查看。

,点击实例ID进入实例详情页。RDS 控制台登录

在左侧导航栏中,单击自治服务>性能趋势。

单击右侧自治功能开关。

在自治中心开关对话框中,将自动性能扩展设置成开启状态,并配置其他参数,设置智能资源扩缩监控条件。

4. 业务连接指向代理地址

在业务的应用系统中,配置数据库连接配置,将连接地址替换为步骤二中获得的数据库代理地址。无需业务改造,阿里云自动完成数据库请求的读写分离。

5. 模拟压测

模拟压测

本步骤需要在ECS控制台中,登录ECS实例,安装压测工具SysBench,并使用该工具模拟流量注入。

开通ECS服务器,要求配置如下:

操作系统镜像为CentOS。版本建议7.x。

其余配置不影响本次体验,选择默认即可。

将ECS的IP地址添加至RDS MySQL的白名单中。

登录ECS。

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

2) 单击远程连接。

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

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

1) 执行如下命令下载SysBench。

yum install gcc gcc-c++ autoconf automake make libtool bzr mysql-devel git mysql 
git clone https://github.com/akopytov/sysbench.git

2) 进入SysBench目录。

cd sysbench

3) 切换到SysBench 1.0.18版本。

git checkout 1.0.18

4) 运行autogen.sh。

./autogen.sh

5) 编译。

./configure --prefix=/usr --mandir=/usr/share/man
make
make install

执行如下命令准备压测数据。

说明:请事先在RDS MySQL中创建一个名为dbfortest的数据库。

sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=dbfortest --table_size=25000 --tables=250 --events=0 --time=600  oltp_read_write prepare

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

参数

说明

mysql-host

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

mysql-port

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

mysql-user

RDS MySQL实例账号。

mysql-password

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

mysql-db

压测数据要注入的数据库名称,本示例中即为RDS MySQL中预先创建的dbfortest数据库。

table_size

要准备的表的大小,可按照示例代码中的25000进行设置。

tables

要准备的表的数量,可按照示例代码中的250进行设置。

events

测试请求数量,按照示例代码中的0进行设置。

time

测试时间,可按照示例代码中的600进行设置。

该命令会自动创建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

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

sysbench --db-driver=mysql  --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX --mysql-db=dbfortest --table_size=25000 --tables=250 --events=0 --time=600   --threads=XXX --percentile=95 --report-interval=1 oltp_read_write run

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

参数

说明

mysql-host

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

mysql-port

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

mysql-user

RDS MySQL实例账号。

mysql-password

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

threads

测试线程数。可设置为32、64、128、256、512等,可根据实际的实例规格和环境时延进行尝试。

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

6. 智能化弹性效果评估

智能化弹性效果评估

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

,打开实例基本信息页,查看实例规格升级结果。RDS 控制台登录

查看弹性动作消息通知。

1) 登录DAS控制台,在左侧导航栏中,单击实例监控。

2) 选择对应数据库实例。

3) 在左侧导航栏中,单击自治中心。

4) 选择类型为弹性伸缩事件。

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

原规格

推荐规格

执行状态

相关信息

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

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

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
在9月20日2024云栖大会上,阿里云智能集团副总裁,数据库产品事业部负责人,ACM、CCF、IEEE会士(Fellow)李飞飞发表《从数据到智能:Data+AI驱动的云原生数据库》主题演讲。他表示,数据是生成式AI的核心资产,大模型时代的数据管理系统需具备多模处理和实时分析能力。阿里云瑶池将数据+AI全面融合,构建一站式多模数据管理平台,以数据驱动决策与创新,为用户提供像“搭积木”一样易用、好用、高可用的使用体验。
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
|
8月前
|
存储 SQL 数据库
数据库设计案例:电商系统数据库设计实践
数据库设计案例:电商系统数据库设计实践
781 1
|
8天前
|
存储 人工智能 数据管理
|
1天前
|
存储 人工智能 数据管理
媒体声音|专访阿里云数据库周文超博士:AI就绪的智能数据平台设计思路
在生成式AI的浪潮中,数据的重要性日益凸显。大模型在实际业务场景的落地过程中,必须有海量数据的支撑:经过训练、推理和分析等一系列复杂的数据处理过程,才能最终产生业务价值。事实上,大模型本身就是数据处理后的产物,以数据驱动的决策与创新需要通过更智能的平台解决数据多模处理、实时分析等问题,这正是以阿里云为代表的企业推动 “Data+AI”融合战略的核心动因。
|
11天前
|
人工智能 容灾 关系型数据库
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!
|
3月前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云瑶池在2024云栖大会上重磅发布由Data+AI驱动的多模数据管理平台DMS:OneMeta+OneOps,通过统一、开放、多模的元数据服务实现跨环境、跨引擎、跨实例的统一治理,可支持高达40+种数据源,实现自建、他云数据源的无缝对接,助力业务决策效率提升10倍。
|
4月前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云数据库重磅升级!元数据服务OneMeta + OneOps统一管理多模态数据
|
6月前
|
开发框架 前端开发 JavaScript
电商商品数据库的设计和功能界面的处理
电商商品数据库的设计和功能界面的处理
|
8月前
|
JavaScript Java 关系型数据库
卤菜销售|基于SSM+vue的智能卤菜销售平台的设计与实现(源码+数据库+文档)
卤菜销售|基于SSM+vue的智能卤菜销售平台的设计与实现(源码+数据库+文档)
97 15
|
8月前
|
小程序 JavaScript Java
小程序商城|基于Spring Boot的智能小程序商城的设计与实现(源码+数据库+文档)
小程序商城|基于Spring Boot的智能小程序商城的设计与实现(源码+数据库+文档)
66 0
小程序商城|基于Spring Boot的智能小程序商城的设计与实现(源码+数据库+文档)

相关产品

  • 云数据库 RDS