我们是一家物流初创公司,我们在2台亚马逊网络服务EC2机器上运行12个Spring Boot微服务项目。一台机器有16 8GB内存,另一台机器有8 8GB内存。我们对Prod和QA有相同的设置。对于两个环境,总共有48 us的RAM机器在运行,这让我们每个月的花费非常高。
平均而言,每个服务消耗2 2GB的内存。
我们只在白天运行QA服务器,以降低成本。
有没有更好的方法来减少每个服务的RAM使用量,以降低总体费用?
发布于 2019-07-19 15:51:32
我们限制了每个Spring服务在启动服务时所占用的内存量。
这是我们使用的。当内存需要增长时,这也将仅增加20%的堆,而当需要收缩时,将释放40%的内存。
java -XX:MinHeapFreeRatio=20 -XX:MaxHeapFreeRatio=40 -XX:MaxRAM=400m -jar java-service.jar
现在,理想情况下,每个spring服务占用的内存少于400MB,这是之前的2 2GB。
https://stackoverflow.com/questions/54433463
复制相似问题