首页 > 其他分享 >阿里云 Serverless 助力盟主直播:高并发下的稳定性和成本优化

阿里云 Serverless 助力盟主直播:高并发下的稳定性和成本优化

时间:2025-01-17 18:04:50浏览次数:1  
标签:Serverless 盟主 运维 SAE 并发 直播 流量

在直播场景中,阿里云 Serverless 应用引擎 SAE 提供的无缝弹性伸缩与极速部署能力,确保直播间高并发时的流畅体验,降低了我们的运营成本,简化了运维流程。结合阿里云云原生数据库 PolarDB 的 Serverless 能力,实现了数据库资源按需自动扩展,在优化成本的同时极大增强了业务灵活性和响应速度。

——盟主直播研发 VP 张湃

盟主直播介绍

盟主直播是为用户打造传播、支付、结算和数据分析闭环的全新移动互联网平台,专注于企业级直播并搭建运营企业直播营销平台,以互动视频直播的方式帮助广大企业、自媒体和个人创业者放大自身的影响力,积累自己的受众粉丝,并通过一站式的交易提高企业的营销速度和效率。盟主直播深入 100 多个细分行业,既为约 400 家世界 500 强/中国 500 强企业提供服务,也为更多企业客户提供了超过 100 万场次的直播服务,获得了客户广泛的高度评价和赞誉。

业务挑战

盟主直播业务发展快速,原有基于 ECS 自建模式的直播平台架构逐渐暴露出难以适应当前业务快速发展,主要包括:系统稳定性、资源利用效率不高、运维复杂等问题。这些问题不仅影响了用户体验和业务连续性,也增加了运营成本和技术管理难度。

平台稳定性不足

  • 流量波动性和高峰压力: 直播业务特性决定了其流量存在显著的日间波动和活动高峰,特别是在大型直播活动和流量高峰期间,系统需要能够迅速响应突发流量,这要求核心数据库系统和应用系统具备极致的弹性伸缩能力。
  • 临时扩容的局限性: 在面对突发流量或大型直播活动时,传统的临时或提前扩容计算资源的方法不仅耗时,而且难以保证系统的 SLA,因此很难在直播高峰期间提供稳定的服务,增加了用户流失的风险。

容量规划难,资源利用率低

  • 难以预测的流量洪峰: 大型直播项目和线上线下营销活动带来的流量洪峰难以准确预测,导致后端资源的规划变得复杂且具有不确定性。
  • 低效的资源保有策略: 为了确保在流量高峰时有足够的计算资源,盟主直播采取了长期固定持有 ECS 服务器的策略,整体服务器资源全天平均资源利用率低于 20%,大部分时间段计算资源处于闲置状态,造成了成本浪费。

运维复杂度高

  • 配置一致性维护: 直播业务的快速增长使得 ECS 集群规模越来越大,配置差异导致负载不均和性能问题,影响整体服务质量。
  • 资源管理和性能监控: 需要全面监控评估当前资源水位,并根据不断变化的业务负载灵活调整资源分配,避免过度配置和资源争夺,增加了资源管理的复杂性。
  • 灾难恢复的重要性: 随着业务的增长,及时发现并处理系统故障是保持业务连续性的关键,确保系统完整性和可用性,防止数据丢失和服务中断。

阿里云 Serverless 云原生解决方案

面对业务平台遇到的挑战,盟主直播经过深入的市场调研,并与阿里云技术团队进行了多轮技术交流和 POC 测试,最终选择了阿里云的 Serverless 应用引擎 SAE 和云原生数据库 PolarDB,该解决方案不仅解决了直播平台在稳定性、性能方面的挑战,还极大地提升了直播平台架构的健壮性,同时也显著减少了运维资源的投入,能够更加专注到业务创新和发展。

计算资源 Serverless 化

高效运维特性:

  • 免运维托管:SAE(即:Serverless 应用引擎)为盟主直播提供了一站式的容器化应用全托管解决方案,用户无需关注底层硬件配置与维护,只需专注于应用逻辑的开发。SAE 自动处理计算资源的分配和优化,大大减轻了运维负担。
  • 发布管理:支持应用程序解耦发布和前后端灰度发布,简化应用更新流程,避免逐个应用修改带来的配置不一致问题。
  • 资源配置灵活性:资源配置可以随时修改并即时生效,统一的 CU 计费抵扣逻辑降低了机器规格更换的复杂性和资损风险。

弹性伸缩和成本优化:

  • 动态扩缩容:SAE 根据实时请求数量动态调整实例数量,确保在直播流量高峰时提供充足的计算资源,而在低谷期缩减资源以实现成本最优化。
  • 定时弹性与指标弹性结合:通过设定基于时间或流量指标的弹性伸缩规则,既能处理周期性流量变化,也能根据实际流量进一步优化资源配置,即使无人值守也能高效支持业务需求。

智能告警和高可用:

  • 监控与报警:集成微服务引擎(MSE)、日志服务(SLS)和 SAE 自身的监控能力,提供全面的基础监控功能,包括 Metrics、Tracing 和 Logging,能够支持对日志的集中采集和监控,内置智能告警机制捕捉异常事务和慢事务,实时日志分析提高了问题定位效率。
  • 高可用部署:通过简单设置即可实现多 AZ(Availability Zone)容灾部署,支持副本自动重启和恢复,在系统发生故障时自动切换至健康节点,增强了系统的容错能力和恢复速度。

业务 Serverless 架构图

数据库 Serverless 化

秒级扩缩容:

阿里云 PolarDB 数据库服务采用存算分离的技术架构,对解决盟主直播平台业务晚高峰流量突增的痛点有了更好的解决方案,即:通过 PolarDB Serverless 秒级扩容 CPU 能力,实现高效、轻松的应对,而且不需要提前预留计算资源,总体上实现了增效降本。

PolarDB Serverless

自动化运维:

数据库计算资源调整从每天晚上流量高峰来临前人工扩容、增加只读节点等转变为 Serverless 全自动模式,降低了 70% 的运维工作量,集群变配时长从 8 分钟缩短至 4 秒。

业务价值

通过阿里云的 Serverless 产品和技术,盟主直播实现了核心直播平台的云原生架构升级,不仅解决了盟主直播现有业务面临的挑战,还面向未来为盟主直播的平台扩展性提供了技术基础,有效提升了行业竞争力,具体包括:

  • 提升业务稳定性和流畅度: 通过 SAE 和 PolarDB 提供的 Serverless 技术确保了在面对流量高峰时,依然能够保持直播平台的高性能和稳定性,实现了用户体验的大幅提升。
  • 显著降低成本: SAE 和 PolarDB 的按需扩缩容特性,帮助盟主直播将整体资源利用率提升了近 50%,成本节约超过 60%。
  • 提高工作效率: SAE 的全托管、免运维特性简化了资源预估和应用部署的流程和投入,运维团队的工作压力大幅减轻,整体工作效率提升了 40%。
  • 增强业务连续性: PolarDB 支持主备切换过程中在途事务不中断,确保直播业务的连续性,即使在极端情况下也能为用户提供不间断的服务体验。

标签:Serverless,盟主,运维,SAE,并发,直播,流量
From: https://www.cnblogs.com/alisystemsoftware/p/18677452

相关文章

  • Java百万数据导出Excel性能优化[读(并发)写分离/流式查询]
    参考:https://www.zhihu.com/tardis/bd/art/533753443?source_id=1001 Java百万数据导出Excel性能优化[读(并发)写分离/流式查询]结果测试:104万数据,导出excel用时由59秒优化到19秒问题列表:1、导出过程中会较多占用CPU、内存、磁盘,需全局对Excel导出限流,防止同时对大量数......
  • Python 中实现并发编程的常见方式
    一、使用多线程(threading模块)解决思路:导入threading模块。定义一个函数,该函数将作为线程的执行体。创建Thread对象,将函数作为参数传递给Thread对象。调用start()方法启动线程。importthreadingimporttimedefworker(num):"""线程执行的函数"""p......
  • 并发编程 - 初识线程
    01、什么是线程?要深刻理解什么是线程,就需要了解计算机的发展史,需要了解多任务概念,需要了解进程概念,然后才是线程概念。因为我们主要还是讲解线程,因此这里就不进行展开说其他概念了,有兴趣的可以自行了解下。简单来说,线程就是操作系统中能够单独执行任务的最小单元。对于大多数......
  • 从线程到协程:理解现代编程中的并发革命(一)
    在现代软件开发中,性能与效率始终是工程师追求的目标,而并发编程正是实现这一目标的关键手段。从传统的线程模型到轻量级的协程技术,编程范式正经历一场深刻的变革。线程为我们带来了并发的能力,但伴随而来的是高昂的资源成本和复杂的管理难度。而协程的出现,则为开发者提供了一种更......
  • MYSQL多版本并发控制(MVCC)
    MYSQL支持并发事务,事务的有四个特性(ACID):原子性(Atomicity):一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节,而且事务在执行过程中发生错误,会被回滚到事务开始前的状态,就像这个事务从来没有执行过一样;一致性(Consistency):数据库只会从一个一致的状态转换到另......
  • 5、提升Java的并发性
    CompletableFuture及反应式编程背后的概念:::info❏线程、Future以及推动Java支持更丰富的并发API的进化动力❏异步API❏从“线框与管道”的角度看并发计算❏使用CompletableFuture结合器动态地连接线框❏构成Java9反应式编程FlowAPI基础的“发布-订阅”协议❏反应式......
  • 卓越效能,极简运维,体验云上的Serverless架构,领取转轮日历!
    「技术解决方案【CloudUp挑战赛】」上线了!业务的持续稳定可服务,决定着企业对客户的服务质量,是企业发展的基础。应用部署的高可用架构和弹性能力对于业务的稳定与发展起着至关重要的作用,但企业同时需要考虑资源维护成本和费用成本。本方案采用云上的Serverless架构,整合了专有网......
  • 卓越效能,极简运维,体验云上的Serverless架构,领取转轮日历!
    「技术解决方案【CloudUp挑战赛】」上线了!业务的持续稳定可服务,决定着企业对客户的服务质量,是企业发展的基础。应用部署的高可用架构和弹性能力对于业务的稳定与发展起着至关重要的作用,但企业同时需要考虑资源维护成本和费用成本。本方案采用云上的Serverless架构,整合了专......
  • CAP:Serverless + AI 让应用开发更简单
    AI已被广泛视为推动行业进步的关键力量,其在各行业的落地步伐加快。企业在构建AI应用开发过程中经常会面临AI技术门槛过高、试错周期过长、GPU资源昂贵且弹性能力不足、缺乏配套工具、业务与模型的开发运维过于割裂、缺乏定制化能力等挑战,成为企业构建AI应用的『绊脚石』。......
  • rust学习十六.3、并发-线程之间共享数据
    线程之间共享数据,即go中部分人所憎恶的方式!然而,这个方式并非没有其优点,否则操作系统也不提供这种实现方式。 闲言少序,上正文!一、概述 *1.当我们大谈基于信道通信时,应该指的是应用级别。如果是操作系统,应该还是会有多种措施的,否则rust的源头在哪里来着。 *2.rust共享内......