(二)Serverless数据库应用场景
数据库领域,用户在以下五个场景中可能应用到Serverless技术:
1、可变工作负载
正在运行不常用的应用程序,每天或每年会出现数次峰期,每次持续30分钟到几个小时,例如人力资源、预算或业务汇报应用程序。使用Serverless技术后就不再需要按峰值容量预置,从而避免为不经常使用的资源付费,也无需按平均容量预置,从而避免可能导致的性能问题和糟糕的用户体验。
2、不可预测的工作负载
正在运行的工作负载需要全天候使用数据库并且具有难以预测活动高峰的特点,例如电商大促时可能出现活动量激增的流量站点。应用Serverless技术后数据库将自动扩展容量以满足应程序的峰期负载需求,并在活动量激增结束后缩减容量。
3、企业数据库队列管理
如果企业拥有数以百计甚至千计的应用程序,每个应用程序都由一个或多个数据库支持,则必须妥善管理整个数据库队列的资源。由于应用程序的需求不断变化,要持续监控并调节各个数据库的容量以确保高性能、高可用性,同时将成本控制在预算范围内,将是一件难度极高的工作。应用Serverless技术后会根据应用程序的需求自动调整数据库容量,管理员无需再手动管理队列中数以千计的数据库。
4、软件即服务应用程序
软件即服务 (SaaS) 供应商通常会在单个集群中运行数以百计甚至千计的数据库,每个数据库支持不同客户,从而提高利用率和成本效率。但供应商仍需要逐一管理每个数据库。借助Serverless技术,SaaS供应商可以为每个单独的客户预置数据库集群,无需担心所预置容量的成本。系统会在数据库未使用时自动关闭数据库以节省成本,并且会即时调整数据库的容量以满足不断变化的应用需求。
5、跨多个服务器横向扩展数据库
写入或读取需求高的客户经常会跨多个实例拆分数据库,从而实现更高的吞吐量。但用户预置的实例数量往往太多或太少,导致成本增加或扩展能力受到限制。借助 Serverless技术,用户能够跨多个实例拆分数据库,让服务根据需求即时自动调整容量。系统可以无缝调整每个节点的容量,不会造成停机或中断,仅使用支持应用程序所需的资源量进行服务。