这篇文档主要介绍云引擎的付费方案、如何管理云引擎的资源、如何使用组管理功能。
云引擎的计费独立于开发版 / 商用版方案,开通或取消商用版不影响云引擎的实例和计费。
对于商业项目和正式上线的产品,我们建议开发者购买标准实例。标准实例 24 小时运行随时待命,无请求时也不会休眠,并配有预备环境方便测试。如果购买了两个或更多的实例,还能进行负载均衡和故障切换,充分保障服务的可用性。
云引擎会为标准实例赠送一个预备环境,它有着和生产环境几乎完全一样的运行环境。在正式上线前,开发者可以先将代码发布到预备环境,使用线上的环境和数据进行模拟测试。
云引擎的网关会将客户端的请求轮流分配给每个实例,随着业务请求量的增加,开发者可以简单地通过增加实例数量来提升处理能力。
在同一分组的同一环境中有两个或更多的实例时,便可实现故障切换。当其中一个实例出现故障无法工作时,云引擎的网关会自动将接下来的请求转发到其他可以正常工作的实例上,等待故障的实例恢复后复原。
使用单个实例无法实现故障切换,当这个唯一的实例出现故障时,该实例会在几分钟之内被重新部署,在此期间该实例无法对客户端的请求做出响应。因此,我们建议对服务可用性要求较高的应用使用两个以上的云引擎实例。
在部署新版本或其他运维操作时,系统会让新旧版本的实例同时运行一段时间,再关闭旧版本的实例,让服务保持零中断。
将实例分组可以实现在访问同一数据源的情况下,部署多份云引擎代码,满足不同的业务需求。每个组可以绑定独立域名。详见 组管理。
云引擎对于每个应用都默认赠送一个 0.5 CPU / 256 MB 的体验实例,可以免费使用,供开发者学习和测试云引擎。
云引擎对于每个购买了标准实例的分组还会赠送一个包含相同规格体验实例的预备环境,可以用作正式上线前的测试。
体验实例在进行部署等管理操作时会暂停服务;同时 体验实例会执行休眠策略,没有请求时会休眠,有请求时启动(首次启动可能需要十几秒的时间),每天最多运行 18 个小时。
标准实例不会休眠。
体验实例会执行休眠策略:
我们为标准版实例提供了几种不同的规格,差别主要体现在可供使用的内存上:
开发者可以根据自己的程序运行时所需要的最大内存来选择实例规格,然后通过调整实例数量来应对请求量的增加。
为了防止实例因为资源使用超限而受到影响,我们建议:
要了解实例资源的耗用程度,请阅读 查看资源用量。
每个应用最多拥有 12 个实例,如果需要更多资源请通过 ask@leancloud.rocks 联系我们的技术支持。
在云引擎的资源页面,点击实例规格旁边的「更改」按钮,选择需要的规格。
在从免费版切换到标准版时,还需要选择要购买的标准实例数量。
在云引擎的资源页面,点击预备环境或生产环境旁边的「更改」按钮,设置需要的数量。
如果不想继续付费,可以在所有分组中将实例规格修改为「免费版」,标准实例会被删除,系统会停止扣费,并在最后一个分组下赠送一个 0.5 CPU / 256 MB 的体验实例。
当一个分组中的一个环境里有多个实例时,我们称之为「多实例运行」。在部署或者运维操作(如重启)期间,也会有多个实例短暂地同时运行。
多个实例的内存和文件系统是独立的,这意味着在一个实例中写入全局变量或文件,其他实例无法读取,建议在首次切换到多实例运行时进行充分的测试。
如果需要在多个实例间低延迟地共享数据,可以使用 LeanCache。
控制台 > 云引擎 > 统计 页面显示出当前应用下所有实例资源的使用情况,开发者由此可以判断实例资源是否即将或已经超限。
曲线图展现出在一段时间内应用实际 CPU 的使用量。如果 CPU 接近或达到限制,应用表现为请求响应时间延长。
曲线图展现出在一段时间内应用内存的实际使用量。如果内存使用量达到限制,则相关的业务进程(比如 Node.js 进程或者 Python 进程)会因为内存溢出(OOM)而重启,从而导致业务处理中断,并且该实例在启动期间服务不可用。如果内存曲线图频繁地接近限制然后忽然下降,就说明内存使用超限导致了进程重启。
若曲线图升高,说明 CPU 使用量达到或超过限制,实例的 CPU 资源紧张。
勾选后会在图表中为每个实例单独绘制一条线(不勾选默认显示所有实例合计的数值)。
开发者还可以使用云引擎的组管理功能,建立多个独立的云引擎分组,在访问同一数据源的情况下,部署多套不同的服务器端业务代码,并对每个分组绑定不同的自定义域名,实现更丰富的业务需求:
每个分组都可以部署云函数、Hook 和定时任务。但如果当前部署代码中部分云函数与其他组的同名时,默认情况会提示错误并中断部署,防止意外重复定义云函数。当然也可以通过在部署时指定 --overwrite-functions 参数强制替换其他组云函数的实现。我们建议强制替换后尽快移除不需要的云函数,否则每次部署都需要额外增加参数,并且重复定义的云函数也不易于理解和维护。
--overwrite-functions
每个分组都有独立的预备环境用于测试代码、独立的域名供外部访问,每个分组的环境变量、代码仓库等设置也是独立的,你可以单独对一个组部署代码。你可以按照 实例管理 一节中的介绍,在分组中创建和管理实例,如果组中没有实例就无法响应请求,如果组中有多个实例便可以提供负载均衡和高可用的能力。
关于组管理功能费用请参考 组管理功能价格 。
你可以在 控制台 > 云引擎 中点击左上角的分组选择框,点击「组管理」,即可创建新的分组、删除分组、设置主要分组。
在选择一个分组之后,便可以在设置界面中修改分组的代码仓库、环境变量等信息,也可以在资源页面下调整规格和实例数量。
新建的分组不包含任何实例(也无法提供服务),开发者可以点击实例规格旁边的「更改」按钮,选择一个标准版的规格,再选择要在生产环境创建的实例数量,之后云引擎会自动赠送一个包含体验实例的预备环境。
如不再需要这个分组,在删除分组前需要先点击实例规格旁边的「更改」按钮,将规格修改为免费版,之后的实例会被删除(无法再提供服务)。
体验实例不收取费用。
标准实例按天扣费,费用为每一种规格的 数量乘上对应的价格,各规格的价格可以在当前节点的价格页面查看,具体扣费信息可在控制台的消费明细中查看。
资源使用量按 当天最大的实例数量 计算,次日凌晨从账户余额中扣费,假设某天从 0 点至 24 点之间:
则当天费用按照 standard-1024 的价格乘上 4 个实例计算。
组管理功能免费使用,但组下面创建的实例按照实例价格收取费用。
每个云引擎实例每天有 1 G 免费额度,超出部分价格可以在当前节点的价格页面查看。
一个应用下的流量额度会合并计算,即每天的免费额度为 max(n, 1) GB,其中 n 为该应用所有云引擎分组下的标准实例总数。
max(n, 1)
n
云引擎运行方案
这篇文档主要介绍云引擎的付费方案、如何管理云引擎的资源、如何使用组管理功能。
云引擎的计费独立于开发版 / 商用版方案,开通或取消商用版不影响云引擎的实例和计费。
标准实例
对于商业项目和正式上线的产品,我们建议开发者购买标准实例。标准实例 24 小时运行随时待命,无请求时也不会休眠,并配有预备环境方便测试。如果购买了两个或更多的实例,还能进行负载均衡和故障切换,充分保障服务的可用性。
云引擎会为标准实例赠送一个预备环境,它有着和生产环境几乎完全一样的运行环境。在正式上线前,开发者可以先将代码发布到预备环境,使用线上的环境和数据进行模拟测试。
云引擎的网关会将客户端的请求轮流分配给每个实例,随着业务请求量的增加,开发者可以简单地通过增加实例数量来提升处理能力。
在同一分组的同一环境中有两个或更多的实例时,便可实现故障切换。当其中一个实例出现故障无法工作时,云引擎的网关会自动将接下来的请求转发到其他可以正常工作的实例上,等待故障的实例恢复后复原。
使用单个实例无法实现故障切换,当这个唯一的实例出现故障时,该实例会在几分钟之内被重新部署,在此期间该实例无法对客户端的请求做出响应。因此,我们建议对服务可用性要求较高的应用使用两个以上的云引擎实例。
在部署新版本或其他运维操作时,系统会让新旧版本的实例同时运行一段时间,再关闭旧版本的实例,让服务保持零中断。
将实例分组可以实现在访问同一数据源的情况下,部署多份云引擎代码,满足不同的业务需求。每个组可以绑定独立域名。详见 组管理。
体验实例
云引擎对于每个应用都默认赠送一个 0.5 CPU / 256 MB 的体验实例,可以免费使用,供开发者学习和测试云引擎。
云引擎对于每个购买了标准实例的分组还会赠送一个包含相同规格体验实例的预备环境,可以用作正式上线前的测试。
体验实例在进行部署等管理操作时会暂停服务;同时 体验实例会执行休眠策略,没有请求时会休眠,有请求时启动(首次启动可能需要十几秒的时间),每天最多运行 18 个小时。
休眠策略
标准实例不会休眠。
体验实例会执行休眠策略:
实例管理
我们为标准版实例提供了几种不同的规格,差别主要体现在可供使用的内存上:
开发者可以根据自己的程序运行时所需要的最大内存来选择实例规格,然后通过调整实例数量来应对请求量的增加。
为了防止实例因为资源使用超限而受到影响,我们建议:
要了解实例资源的耗用程度,请阅读 查看资源用量。
每个应用最多拥有 12 个实例,如果需要更多资源请通过 ask@leancloud.rocks 联系我们的技术支持。
修改实例规格(升级到标准版)
在云引擎的资源页面,点击实例规格旁边的「更改」按钮,选择需要的规格。
在从免费版切换到标准版时,还需要选择要购买的标准实例数量。
修改实例数量
在云引擎的资源页面,点击预备环境或生产环境旁边的「更改」按钮,设置需要的数量。
退回免费版
如果不想继续付费,可以在所有分组中将实例规格修改为「免费版」,标准实例会被删除,系统会停止扣费,并在最后一个分组下赠送一个 0.5 CPU / 256 MB 的体验实例。
多实例运行
当一个分组中的一个环境里有多个实例时,我们称之为「多实例运行」。在部署或者运维操作(如重启)期间,也会有多个实例短暂地同时运行。
多个实例的内存和文件系统是独立的,这意味着在一个实例中写入全局变量或文件,其他实例无法读取,建议在首次切换到多实例运行时进行充分的测试。
如果需要在多个实例间低延迟地共享数据,可以使用 LeanCache。
查看资源用量
控制台 > 云引擎 > 统计 页面显示出当前应用下所有实例资源的使用情况,开发者由此可以判断实例资源是否即将或已经超限。
曲线图展现出在一段时间内应用实际 CPU 的使用量。如果 CPU 接近或达到限制,应用表现为请求响应时间延长。
曲线图展现出在一段时间内应用内存的实际使用量。如果内存使用量达到限制,则相关的业务进程(比如 Node.js 进程或者 Python 进程)会因为内存溢出(OOM)而重启,从而导致业务处理中断,并且该实例在启动期间服务不可用。如果内存曲线图频繁地接近限制然后忽然下降,就说明内存使用超限导致了进程重启。
若曲线图升高,说明 CPU 使用量达到或超过限制,实例的 CPU 资源紧张。
勾选后会在图表中为每个实例单独绘制一条线(不勾选默认显示所有实例合计的数值)。
组管理
开发者还可以使用云引擎的组管理功能,建立多个独立的云引擎分组,在访问同一数据源的情况下,部署多套不同的服务器端业务代码,并对每个分组绑定不同的自定义域名,实现更丰富的业务需求:
每个分组都可以部署云函数、Hook 和定时任务。但如果当前部署代码中部分云函数与其他组的同名时,默认情况会提示错误并中断部署,防止意外重复定义云函数。当然也可以通过在部署时指定
--overwrite-functions
参数强制替换其他组云函数的实现。我们建议强制替换后尽快移除不需要的云函数,否则每次部署都需要额外增加参数,并且重复定义的云函数也不易于理解和维护。每个分组都有独立的预备环境用于测试代码、独立的域名供外部访问,每个分组的环境变量、代码仓库等设置也是独立的,你可以单独对一个组部署代码。你可以按照 实例管理 一节中的介绍,在分组中创建和管理实例,如果组中没有实例就无法响应请求,如果组中有多个实例便可以提供负载均衡和高可用的能力。
关于组管理功能费用请参考 组管理功能价格 。
创建和管理组
你可以在 控制台 > 云引擎 中点击左上角的分组选择框,点击「组管理」,即可创建新的分组、删除分组、设置主要分组。
在选择一个分组之后,便可以在设置界面中修改分组的代码仓库、环境变量等信息,也可以在资源页面下调整规格和实例数量。
新建的分组不包含任何实例(也无法提供服务),开发者可以点击实例规格旁边的「更改」按钮,选择一个标准版的规格,再选择要在生产环境创建的实例数量,之后云引擎会自动赠送一个包含体验实例的预备环境。
如不再需要这个分组,在删除分组前需要先点击实例规格旁边的「更改」按钮,将规格修改为免费版,之后的实例会被删除(无法再提供服务)。
价格
实例价格
体验实例不收取费用。
标准实例按天扣费,费用为每一种规格的 数量乘上对应的价格,各规格的价格可以在当前节点的价格页面查看,具体扣费信息可在控制台的消费明细中查看。
资源使用量按 当天最大的实例数量 计算,次日凌晨从账户余额中扣费,假设某天从 0 点至 24 点之间:
则当天费用按照 standard-1024 的价格乘上 4 个实例计算。
组管理功能价格
组管理功能免费使用,但组下面创建的实例按照实例价格收取费用。
超限流量价格
每个云引擎实例每天有 1 G 免费额度,超出部分价格可以在当前节点的价格页面查看。
一个应用下的流量额度会合并计算,即每天的免费额度为
max(n, 1)
GB,其中n
为该应用所有云引擎分组下的标准实例总数。