Timing App的Serverless实践案例

本文涉及的产品
简介: 阿里云应用引擎 Serverless(SAE),基于 Serverless 架构,提供秒级自动弹性 & 定时弹性能力,帮助应用轻松应对大促峰值流量, 保证 SLA 的同时也节省机器保有成本。


1、背景和挑战:


作为广受好评的学习应用,Timing App 专注于帮助社区用户提升学习凝聚力,达成学习目标。目前已有超过 700 万人通过 Timing 进行高效学习。与传统在线学习应用不同,Timing app 提供了 Timing 自习室、图书馆学习、 视频打卡、学习日记、契约群、学习服务等多类具有社交性质的在线教育服务,帮助用户找到自己的学习节奏,找到 坚持学习的一万种理由。Timing 业务本身具有潮汐特性,用户访问主要集中在晚间和节假日。受疫情影响,春节期 间峰值流量暴增 4 倍,公司面临较大的运维成本压力。在用户、流量爆发式增长背景下,Timing App 不得不直面以 下四大痛点:


(1)系统稳定性差。原有 PHP 单应用架构系统无法做到线性快速扩容,在业务高峰时段,系统问题频繁发生,严 重影响用户体验。
(2)产品迭代缓慢。随着业务的高速发展,原有单体架构对于产品的迭代力不从心,没法快速响应研发需求。
(3)资源使用浪费。由于业务具有非常强的流量潮夕特征,需要按照业务高峰阶段进行资源保有配置,造成资源 的浪费。
(4)技术成本昂贵。以前的团队除了技术负责人及少数团队新成员外,基本缺乏微服务架构实战经验。想要实现 微服务改造,急需能够快速上手的平台支撑,需要最大限度降低底层 IaaS, 容器以及常用微服务套件的学习 成本。


2、云原生解决方案:


阿里云应用引擎 Serverless(SAE),基于 Serverless 架构,屏蔽了底层 IaaS 运维和 K8s 细节,区别 于 FaaS 形态的 Serverless 产品,用户无需修改编程模型,零代码改造就能直接使用。同时,完美结合 Spring Cloud/Duboo 等微服务架构,提供应用发布、管理和服务治理等应用全生命周期的服务,完美贴合 Timing 的技术 需求:极限弹性伸缩,应用生命周期灵活管理,完美支持主流微服务架构。
下图是方案架构示意图。
image.png


3、方案的关键优势:


(1)利用弹性伸缩,应对不确定突发流量。提供秒级自动弹性 & 定时弹性能力,帮助应用轻松应对大促峰值流量, 保证 SLA 的同时也节省机器保有成本。多适用于互联网、游戏、在线教育行业。 应用环境随需灵活启停,节约成本。提供了一键启停开发测试环境的能力,即开即用,节省成本,方便运维。 适用于对成本敏感、云上有多套环境但部分环境闲置率较高的企业型客户(不限行业)。
(2)中小企业快速构建云上微服务应用。帮助用户屏蔽底层 IaaS 购买和运维细节、底层 K8s 细节,低门槛部署 微服务应用。适用于初创型 / 上升期的公司(不限行业),业务增长很快,对增长有较高预期,但人员配置 跟不上。
(3)整体技术架构更为清晰,每个服务相互独立且职责明确。加之阿里云应用引擎 Serverless (SAE)加持, 让客户只关注在业务层,做好产品。


相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
13天前
|
运维 Java 物联网
Serverless 应用引擎产品使用之阿里函数计算中使用custom container,如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
13 0
|
13天前
|
运维 JavaScript Java
Serverless 应用引擎产品使用之阿里云Serverless函数计算中,在Node.js环境中执行jar文件如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
21 0
|
4月前
|
运维 监控 Dubbo
SAE(Serverless App Engine)和FC(Function Compute)
【1月更文挑战第18天】【1月更文挑战第89篇】SAE(Serverless App Engine)和FC(Function Compute)
93 1
|
4月前
|
运维 Dubbo Java
对于使用Next.js建站,选择Serverless FC还是Serverless应用引擎
【1月更文挑战第12天】【1月更文挑战第60篇】对于使用Next.js建站,选择Serverless FC还是Serverless应用引擎
312 2
|
10月前
|
SQL 存储 运维
go+vue自建运维管理平台
go+vue自建运维管理平台
266 0
go+vue自建运维管理平台
|
11月前
|
编解码 移动开发 JavaScript
开发Hybrid App的技术选型
开发Hybrid App的技术选型
131 0
|
Kubernetes Cloud Native Serverless
站酷云 : APP Engine + 云原生 + CICD + 中间件管理 + 服务网格
App Engine本身不是技术手段,它是一个PAAS平台,至于底层用K8s还是虚拟机、serverless还是微服务,其实都是可以的,这个概念可以越来越老,但是它简化开发者的入门门槛,通过简单的勾选即可生成一个应用,这个思想,值得PAAS平台们借鉴。
站酷云 : APP Engine + 云原生 + CICD + 中间件管理 + 服务网格
|
Serverless
《组件即函数和Serverless SSR实践》电子版地址
组件即函数和Serverless SSR实践--狼叔
88 0
《组件即函数和Serverless SSR实践》电子版地址
|
存储 Kubernetes 监控
在 Kyma 云原生平台上开发并部署 Node.js 应用
在 Kyma 云原生平台上开发并部署 Node.js 应用
246 0
在 Kyma 云原生平台上开发并部署 Node.js 应用
|
消息中间件 ARouter 安全
「性能优化系列」APP启动优化理论与实践(下)
● 启动耗时监测实战:手动打点以及AspectJ方式对比; ● 启动优化实战:有向无环图启动器、IdleHandler启动器以及其他黑科技方案; ● 优化工具介绍。
290 0

热门文章

最新文章

相关产品

  • 函数计算