问题描述
公司做的一个C/S架构的系统,客户端占的内存资源很大,在windows机器下跑了多个客户端时,经常机器死掉了,后来大家一起研究,发现在客户端程序开多的时候,windows页面文件的很快占满了,但更奇怪的是页面文件快满了,但是物理内存还有很多空闲,足够继续开更多客户端。后来我们通过计算,发现客户端运行时,使用的物理内存数量和虚拟内存数量大致是1:1我们的服务器是windowsserver2003企业版的,12G物理内存,设了2G虚拟内存首先,我知道毕竟是企业版的操作系统,这个问题,把虚存调大就可以了。另外java程序运行时,由Java虚拟机,还有操作系统来管理内存,应用程序不能控制内存使用。但是我还是很好奇,为什么我们的客户端运行时,使用的物理内存数量和虚拟内存数量会是1:1这么个比例呢?这个比例可不可以通过调整一些JVM参数来改变?或者在Windows服务器系统工具里可以进行调整?可能有些概念我描述的有问题,但是主要想知道上面这个问题的答案
解决方案
解决方案二:
不是很了解JVM,个人感觉希望不大
时间: 2024-09-17 03:55:04