关于上传项目会多收费的问题

我们发布新版本的时候,“0.5 CPU 256 MB”总会报OOM的错误,必须要升级到“2 CPU 1024MB”。
但是项目上传以后,我们将价格调整回 0.5 CPU 256 MB 也是可以正常使用的。而且由于要先发布到预备环境,然后才能发布到生产环境,这样就导致每次更新需要花费 8 刀,我们认为这个太不合理。

因为部署、构建的时候需要内存较多,然后云引擎的计费粒度是天,所以造成这个现象。

如果对价格敏感,建议尝试减少部署、构建所需内存,例如 Java 项目可以尝试打包 fat jar 。

另外,lean cli 的下一个版本将支持直接部署到生产环境( lean deploy --prod 1)。该版本尚未发布,目前您需要自行编译 lean cli 使用这一特性。

我不是很确定这个说法是对的。

我补充两个事情:

  1. 对于 Spring Boot 的应用来说,256M 确实太小了,建议开到 1G 以上
  2. 按说如果你升级了生产环境的规格的话,预备环境的规格会自动变成和生产环境一样(不额外收费),所以你只需升级生产环境即可。

我在部署 LeanCloud 提供的 Demo (spring-boot-getting-started-master),也是同样的情况:上传部署的时候,必须选择2CPUs那个才能正确部署,但是部署成功后,切换回0.5CPU也是可以正常使用的。我可以提供操作的录屏视屏,但是这里貌似不可以上传,可以给我一个微信号。

请问你们能看出我们部署项目内存是多少么?我们的项目部署在:https://tima.avosapps.us/ 没有页面,只有接口。

你可以在云引擎的统计界面中看到实际的内存使用,我看大概是 780M 左右。所以在 256M 下会 OOM 是正常现象,你提到的在部署后改回 256M 可以继续运行的问题我们会再调查一下,如果确实是这样的话,可能是我们的内存限制没有生效。

您好,请问:
1、如果我使用 Java 语言,目前只能选择 Spring Boot 框架么?
2、在没有页面只有接口的情况下,LC 支持的其它语言(Python、nodejs)哪一种占用的内存会小一点?

  1. 云引擎还支持 Servlet,您可以试一下,这个模板项目是可以在 256 MB 的实例上部署的(仅仅是部署,如果后续访问量大的话,仍然可能内存不够)。另外,您也可以使用其他框架,不过需要自行实现健康检测
  2. Python、nodejs 占用的内存都不大,从功能上来说,nodejs 支持的功能要全一点,也是当前云引擎上用户选择最多的语言。