应用托管服务,顾名思义,就是一个用来构建和部署应用的全托管式平台,简化部署和运维过程。
在使用应用托管服务之前,上线一款简单的应用,需要经历:
购买 ECS;
配置 VPC;
配置 RDS;
配置 SLB;
前前后后有12个步骤,而借助阿里云Web应用托管服务,可省去云端资源的申购与编排、软件运行时环境的安装与配置、应用程序的启停与维护、部署环境模板的分发与重放等多个环节,一步便能实现应用的发布。
使用Web+以前:购买ECS->购买并配置VPC和交换机->配置安全组->购买SLB及配置服务器组->购买RDS及配置数据库->安装语言运行时环境->部署并启动应用->检查应用健康状况->完成,共计8个步骤。
使用Web+以后:上传应用部署包->一站配置网络、主机实例、SLB和RDS->结束,只需2个步骤。
目前,阿里云提供了多种托管服务,我们对比如下:
功能说明
ECS:指是否支持直接使用ECS资源。
容器:指是否支持或使用了容器技术,包括容器服务或ECI等。
应用托管:指是否支持应用托管能力,主要是应用部署及应用生命周期管理。
多语言:指是否支持部署多种编程语言构建的应用。
分布式应用:指是否支持部署多节点应用。
资源编排:指是否能够对被管理的底层资源进行自动编排。
微服务:指是否支持微服务能力,包括服务注册与发现、配置管理、弹性伸缩等。
资源可操控性:指用户是否可以对被托管的底层资源进行自主操控。
容量限制:指使用该服务是否对依赖的底层容量资源有所限制。
可见,阿里云Web应用托管服务对ECS、可以用来部署Web类、应用托管、多语言、分布式应用、资源编排均有很好的支持,且在资源可控性优于其他托管服务。
阿里云Web应用托管服务支持移动类和API类应用,同时支持 Java、Node.js、PHP、Go 和 Python 语言编写并构建应用程序,在无需管理底层基础设施的情况下,即可简单、高效、安全和灵活地对应用进行部署、扩缩、变更配置和监控,并提供了以下三类托管方案。
普通Web应用托管方案
极简配置的单机部署,适用于小规模的测试场景;
复杂配置的分布式部署,适合大规模的生产场景。
单机部署模式下,反向代理、用户的应用程序和数据库等均部署在一台主机上,最大限度的解决资源和成本问题。
分布式部署模式下,用户的应用可以使用弹性能力方便的进行横向扩展,再通过SLB对请求进行负载均衡。
小程序移动应用托管方案
小程序移动应用的前后端是严格分离的,前端程序运行在宿主应用中,后端程序运行在云厂商提供的基础设施服务之上。使用Web应用托管服务可以轻松运维小程序移动应用的后端部分。在组织内部,通过共享配置模板或将配置模板提交到代码仓库进行版本管理,团队内部成员可以使用这些配置模板快速创建一个相同配置的部署环境。
开源应用托管方案
在开发过程中,通过命令行工具与CI/CD系统集成,开发者可以快速构建、测试、验收并发布开源软件。在发布过程中,通过分发资源描述文件,维护者可以帮助用户进行系统配置和初始化工作。由于运行应用所需的运行时环境各不相同,在Web应用托管服务插件体系的支撑下,开源应用将可以按需依赖任何第三方组件。