Timing App的Serverless实践案例

1、背景和挑战:

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

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

2、云原生解决方案O r L 3 X 7 k

阿里云应用引擎 Serverless(SAE),基于 Serverless 架构,屏蔽了底层 IaaS 运维和 K8s 细节,区别 于 FaaS 形态的 Serverless 产品,用: ; 5 + @户无需5 a ) ` ^ @ f 1 c修改编程模型,零代码改造就能直接使用。同时,完美结合 Springs j q Z N p . p CloK % P #ud/Duboo* u + } } 等微服务架构,提供应用发布、Y N ( } Z ] 9 d T管理和服务治理等应用全生命周期的服务,完美贴合 TL F B uiming 的技术 需求:极限弹性伸缩,应用生命周期灵活管理,完美支持主流微服务架构。
下图是方案架构示意图。
Timing App的Serverless实践案例

3、方案的关键优势:

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

1、背景和挑战:

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

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

2、云原生* t ;解决方案:

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

3、方案的关键优势:

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