
# Serverless
Serverless实例是TaurusDB提供的一种数据库实例，能够根据业务负载自动扩展计算和存储能力。用户只需为实际使用的资源付费，有效降低数据库运维成本和资源浪费，特别适合业务波动大或开发测试环境使用。
#### 为什么需要Serverless
在现代企业级IT系统中，数据库的稳定性和可靠性是至关重要的。如果数据库不能稳定运行，那么整个系统的运行也将受到影响。为了保障数据库的稳定运行，用户通常会保守地进行配置，包括但不限于计算资源、内存、存储等多种资源和参数的设置，通过冗余的资源来保障在业务高峰时数据库的正常运行。
然而，在业务波谷期，冗余配置的数据库资源会大量闲置，成本空转，而在面对预期外的激增业务压力时，即使已经保守配置，数据库资源也有可能出现短时间的不足情况，系统整体有受损风险。
如何在不影响业务性能的前提下，避免资源浪费和成本过高？如何应对不可预测的业务流量波动，确保系统稳定运行？TaurusDB Serverless实例根据应用程序的需求自动扩展或缩减容量，根据实际负载自动调整计算和存储能力，确保性能的同时优化成本，简化数据库运维，降低技术门槛，让企业专注于业务发展，快速应对业务流量变化，保障系统稳定运行。
#### Serverless的优势是什么
- 成本优化：采用按使用量付费模式，只为实际占用的资源付费，不依赖其他基础设施，即买即用。得益于自动化资源管理，平均可节省30%以上的计算资源费用，尤其对波动性大的业务效果显著。
- 弹性伸缩：根据业务负载自动调整计算资源，无需手动配置。横向（只读节点数量变化）与纵向（CPU和内存规格变化）扩展协同工作，提供精细、强大的算力供给，轻松应对预期外或突发业务压力。资源供给与回收速度通常在秒级完成，确保用户体验无中断。
- 大容量存储：存储空间最大可高达128TB，根据实例数据量自动扩容，有效避免存储资源不足对业务造成影响。
- 精细计费：资源分配和计费精确到0.5TCU粒度，1 TCU的算力配置约等于1vCPU 2GB的实例规格。只为实际消耗的计算资源付费，彻底消除资源浪费。
- 全面托管：规格扩缩容、存储空间自动扩容、监控告警、智能运维等所有运维工作由华为云专业团队完成，用户无感知，业务无影响，服务持续可用，真正免运维。
- 安全可靠：内置数据加密、访问控制和安全审计机制，保障数据安全。
 
#### Serverless的使用场景
- 电商平台促销活动支撑**：**电商平台在促销活动期间常面临流量激增的挑战，日常访问量波动较大，且需应对突发的高并发访问。借助Serverless实例，可支撑电商平台的订单系统、商品库存管理及用户数据存储等服务。通过自动弹性伸缩能力，系统能够轻松应对流量高峰，确保业务稳定运行，同时避免资源闲置浪费，实现按需付费的成本优化。
- 移动应用后端服务：移动应用的用户规模快速扩张，访问量往往难以预测，同时还需要保证低延迟的响应速度。Serverless实例可为移动应用提供用户数据管理、消息推送和内容存储等后端服务。借助其自动扩缩容能力，系统能依据实际负载动态调整资源，从而简化运维工作，迅速响应业务变化，最终全面提升用户体验。
- 数据分析平台：数据分析师经常需要处理大量历史数据，查询模式复杂多变，导致计算资源需求波动较大。Serverless实例为数据分析平台提供数据存储和分析服务，支持复杂查询和报表生成。通过按需分配计算资源，用户只需为实际使用的资源付费，有效降低数据分析成本，同时提高数据处理效率，避免资源闲置浪费。
 
#### Serverless的工作原理
TaurusDB Serverless基于共享存储采用一写多读架构，主节点和只读节点均为Serverless形态，随业务负载变化，纵向伸缩（CPU和内存规格变化）可在秒级完成，而横向伸缩（只读节点数量变化）通常需要几分钟至数分钟完成。用户只需指定计算单元（TCU）的弹性范围，系统根据CPU和内存使用情况自动调整资源，1TCU约等于1U2GB实例规格。数据库代理接收请求后进行解析和鉴权，根据请求类型调度到合适的计算节点，计算节点处理数据时与分布式存储交互，分布式共享存储确保数据安全，资源管理模块持续监控负载自动调整计算资源，形成完整的服务闭环，快速响应业务峰谷变化，在保障性能的同时优化使用成本，助力企业降本增效。
图1Serverless架构图   
![](https://support.huaweicloud.com/productdesc-taurusdb/figure/zh-cn_image_0000001898776184.png "点击放大")
#### Serverless与普通实例的区别
TaurusDB Serverless实例与普通实例都是华为云TaurusDB数据库服务的实例形态，两者均提供MySQL兼容的数据库服务，支持数据持久化存储和高可用性保障。
**核心差异**
- 资源弹性能力：Serverless实例可根据业务负载自动弹性伸缩，其中纵向伸缩（CPU和内存规格变化）可在秒级完成，而横向伸缩（只读节点数量变化）通常需要几分钟至数分钟完成；普通实例需要手动调整规格，无法自动适应负载变化。
- 计费模式：Serverless按使用量计费，以TCU为单位，1TCU约等于1U2GB，只为实际消耗的资源付费；普通实例按固定规格计费，无论资源是否充分利用均需支付固定费用。
- 运维复杂度：Serverless采用全面托管模式，规格扩缩容、监控告警等运维工作由华为云专业团队完成；普通实例需要用户自行负责运维管理，包括性能优化、故障处理等。
造成二者核心差异的根本原因在于技术架构和设计理念的不同。Serverless采用计算存储分离架构，实现了计算资源的池化和弹性调度；而普通实例多采用传统的一体化架构，资源固定分配。此外，Serverless的设计理念是追求极致弹性和成本优化，满足现代应用对资源灵活性的需求；普通实例则更注重稳定性和可预测性，适合传统业务场景。
表1Serverless实例与普通实例的区别 
| 对比维度  | Serverless实例          | 普通实例                       |
|:---|:---|:---|
| 资源弹性  | 自动弹性伸缩，秒级响应纵向和分钟级横向扩展 | 需手动调整规格，无法自动适应负载变化         |
| 计费模式  | 按使用量计费(TCU)，只为实际消耗付费  | 按固定规格计费，无论资源是否充分利用均需支付固定费用 |
| 运维复杂度 | 免运维，所有运维工作由云服务商完成     | 需用户自行负责运维管理，包括性能优化、故障处理等   |
| 适用场景  | 业务波动大、不可预测的场景         | 业务稳定、资源需求可预测的场景            |
| 成本特点  | 业务波动大时成本低，避免资源闲置浪费    | 业务稳定时成本更可控，便于预算规划          |
   
图2普通实例和Serverless实例的资源使用和规格变化情况   
![](https://support.huaweicloud.com/productdesc-taurusdb/figure/zh-cn_image_0000001970655778.png "点击放大")
#### 与Serverless相关的特性和操作
在全面了解Serverless的核心概念与应用场景后，本小节将为您介绍Serverless的常用基础操作与高级应用特性。如果您想要深入了解并在实际业务中配置使用，可以单击相关超链接跳转查看详细的华为云官方文档。
- 创建Serverless：Serverless会根据应用程序的需求自动扩展或缩减容量。详情请参见[购买Serverless](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_02_0210.html)。
- 修改算力范围：您可根据业务需要修改Serverless的算力范围。当满足一定的触发条件时，就会自动触发Serverless实例算力变更。详情请参见[修改算力范围](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_0025.html)。
- 添加Serverless节点：您可以根据业务需要为其添加Serverless只读节点。详情请参见[为实例添加Serverless节点](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_02_0220.html)。
- 固定规格实例开启动态Serverless：根据业务需求为按需计费或包年/包月实例启用动态Serverless，并设置Serverless的算力范围。当达到特定触发条件时，系统将自动调整Serverless实例的算力，从而实现资源的灵活调度和成本优化。详情请参见[固定规格实例开启动态Serverless](https://support.huaweicloud.com/usermanual-taurusdb/taurusdb_03_0037.html)。
 
