作者:卢嘉怡i | 来源:互联网 | 2023-02-05 21:53
1> rmharrison..:
TL; DR
您的实例(在我的情况下为t2.micro)内存不足,因为实例启动是并行化的.
黑客攻击解决方案:在实例上提供SWAP空间并重试
一次性,登录实例时......
sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo chmod 600 /var/swap.1
sudo /sbin/swapon /var/swap.1
从/更多细节:如何将交换添加到EC2实例?
在部署期间,我们使用了一点SWAP,但没有崩溃
Mem: 1019116k total, 840880k used, 178236k free, 15064k buffers
Swap: 1048572k total, 12540k used, 1036032k free, 62440k cached
实际分辨率
更大的例子
虽然可以通过EBS扩展存储,但实例附带固定的CPU和RAM,AWS源.
花钱,这些只是开发实例,其中mem只是一个问题
在ElasticBeanStalk中自动配置交换
大概 .ebextensions/
开放性问题:云形成风格还是部署/重启时的钩子?
加入"无服务器"的潮流
API Gateway + Lambda + Friends的承诺是我们不应该处理这个问题.
对于云原生的微服务,你"够高"吗?它们甚至适合您的问题,当像SOA这样的稳定/不时尚的东西就足够了.
一旦进入云端,恢复到本地将是困难的,这是一些要求.
使用较少膨胀的包
有时你会被遗留下来
可能由必要的传递或子依赖性引起.它在哪里结束......分解其他人的图书馆?
说明
一个快速的谷歌揭示了这ENOMEM
是一个内存不足的错误.
t2.micro
实例只有1 GB的RAM.
我们很少会在开发中使用这个数量; 但是,ElasticBeanstalk通过衍生的工作程序并行化部分构建过程.这意味着在SETUP期间,对于较大的包,可能会耗尽内存并且操作将失败.
使用free -m
我们可以看到......
开始(充足的空闲记忆)
total used free shared buffers cached
Mem: 1019116 609672 409444 144 45448 240064
-/+ buffers/cache: 324160 694956
Swap: 0 0 0
下次打勾时内存不足)
Mem: 1019116 947232 71884 144 11544 81280
-/+ buffers/cache: 854408 164708
Swap: 0 0 0
部署过程中止
total used free shared buffers cached
Mem: 1019116 411892 607224 144 13000 95460
-/+ buffers/cache: 303432 715684
Swap: 0 0 0
Stack Overflow的建议:让这样的人展示他们的比特币钱包地址,这样我就可以节省时间和金钱.