在使用Serverless 应用引擎 SAE(Serverless App Engine)前,需了解该产品所涉及的概念。本文介绍与SAE产品相关的专有名词与基本概念。
命名空间
逻辑隔离的运行环境。
包含K8s的命名空间和微服务的命名空间两层含义。从应用的服务调用与分布式配置推送的视角隔离不同的运行环境,例如开发环境、测试环境、生产环境。
应用
应用是SAE管理的基本单位。
一个应用内通常包含一个或多个实例。SAE提供了完整的应用生命周期管理机制,可以完成应用从发布到运行过程的全面管理,包括应用创建、部署、启动、回滚,扩缩容等操作。
应用实例
应用运行的最小单元。
应用通常在一个或者多个实例上运行,应用可以拥有多个部署版本,不同实例上运行着不同版本的应用程序。
微服务应用
提供服务注册发现和服务治理的能力,例如使用SpringCloud、Dubbo、Motan、Mesh以及K8s Service框架来开发和通信的应用。更多信息,请参见SAE微服务相关概念和能力。
启动命令
设置容器启动和运行时所需要的命令。
启动容器就是启动主进程。启动主进程前,需要对MySQL数据库进行数据库配置、初始化等操作。在制作镜像时请在Dockerfile文件中设置ENTRYPOINT或CMD。例如在Dockerfile中设置了ENTRYPOINT ["top", "-b"]
,则在容器启动时执行该命令。
应用健康检查
在应用运行过程中,定时对应用实例健康状况进行检测的系统操作。
SAE提供以下应用健康检查方式:
通过应用存活探针(Liveness)检查应用实例是否存活,如果检查结果是非存活状态,则SAE会执行应用实例重启操作。
通过应用业务探针(Readiness)检查应用业务是否就绪、是否准备好处理用户请求,如果未准备就绪,则屏蔽对该应用实例的访问;如果成功,则开放对该应用实例访问。
应用配置管理
一款在分布式架构环境中对应用配置集中管理和推送的工具类产品。
您可以在SAE中使用该功能对应用配置进行集中管理和推送,同时还可以基于命名空间在不同环境间进行配置的隔离和同步。
容器
镜像运行时的实体。
可以对容器进行创建、启动、停止、删除和暂停等操作。镜像和容器的关系,类似面向对象程序设计中的类和实例的关系,镜像是静态的概念,而容器是动态的概念。实例与容器是一对一的关系。
容器镜像
容器镜像是一种容器化标准交付物,用于打包应用程序及其依赖的环境。可以基于Dockerfile文件将应用构建为容器镜像并上传到容器镜像仓库中,然后您可以在测试或者生产环境中拉取容器镜像并启动容器。