SAE能帮助企业极速上云,从容应对突发流量洪峰,以及通过灵活的应用启停来降低资源使用成本。本文以在线教育应用Timing App为例,介绍SAE在支持在线教育应用上云方面的成功案例。
背景信息
Timing App是武汉氪细胞网络技术有限公司出品的在线教育应用。
Timing App采用单体PHP架构,2020年开始尝试基于开源项目自建微服务架构和应用性能管理(APM)体系,但终因技术门槛高和人力不足等因素而未能成功。其业务具有潮汐特性,用户访问集中在夜间和节假日。2020年初,由于COVID-19疫情的缘故,远程学习成为重要的教育手段,在此期间Timing App的峰值流量暴增4倍,但由于没有专职运维人员,其业务压力和运维成本剧增。
业务痛点
Timing App面临以下业务痛点:
- 业务代码耦合度高。
- 微服务架构运维复杂。
- 开发迭代效率低。
- 资源利用率低。
为什么选择SAE
- SAE采用Serverless架构,屏蔽了底层IaaS运维和K8s细节,并且与FaaS形态的Serverless产品不同,无需修改编程模型和改造代码即可直接使用。该技术特点降低了使用门槛,契合Timing App的需求。
- SAE支持Spring Cloud、Dubbo等微服务架构,具有微服务免运维特性,能解决Timing App的微服务架构复杂的痛点,满足Timing App免运维的需求,从而节省人力成本。
- SAE提供丰富的功能和服务,包括应用发布、应用管理、服务治理、自动弹性、一键启停应用和应用监控等,尤其是定时弹性功能完美解决了Timing App业务峰值流量的痛点。
- SAE按实际用量计费,且支持小规格实例(0.5 CPU、1 GiB),可有效提高资源利用率。
解决方案
Timing App解决方案逻辑图如下所示。
方案实施如下:
- 微服务改造。
Timing App原为PHP框架,需改造为Spring Cloud或Dubbo微服务框架。SAE提供关于Spring Cloud或Dubbo微服务框架应用开发的Demo。更多信息,参见Spring Cloud开发概述或者Dubbo开发概述。
- 环境隔离。
Timing App有开发环境、测试环境和生产环境,在SAE中以命名空间进行逻辑隔离。更多信息,请参见创建命名空间。
- 网络准备。
Timing App是一款在线教育应用,有一定的网络要求,需要在部署前为Timing App创建VPC。更多信息,请参见创建VPC。
- 部署上云。
SAE内置服务注册中心,提供WAR、JAR和镜像三种便捷上云方式,降低了技术门槛。更多信息,请参见应用部署概述。
- 应用访问。
Timing App部署在SAE后,需要配置SLB以实现公网访问。更多信息,请参见为应用绑定SLB和部署在SAE上的应用如何访问公网。
- 应用管理。
SAE提供了应用生命周期管理、应用实例查看、网关路由、一键启停、弹性伸缩等功能。更多信息,请参见应用管理概述。
- 应用监控。
开通SAE
单击下方按钮可立即前往SAE开通页面。