栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Linux提高CPU、内存的使用率

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux提高CPU、内存的使用率

背景:

给甲方做项目,项目申请的服务器资源过剩了,甲方要求服务器资源(CPU、内存、磁盘等)要达到一定的要求,不然就会减配,为了方便后续扩展不考虑减配,直接将使用率提高。

CPU: 思路:

思路是先将CPU占用率直接上到100%,然后用cpulimit限定进程占用上限;

解决方法:

1、安装cpumit

下载cpulimit-master
https://github.com/opsengine/cpulimit/archive/master.zip
unzip cpulimit-master.zip
cd cpulimit-master
make
cp src/cpulimit /usr/bin

2、不间断复制,提高占用率到100%

nohup dd if=/dev/zero of=/dev/null &

3、限制该进程的cpu使用率

①使用top查看进程号

②限定最高占用率,nohup cpulimit -l 60 -p 39425 &,-l后限定最高占用百分比,-p后是进程PID
③再次执行top命令,CPU占用率已经稳定在60%

内存: 思路:

在Java代码中创建集合,向集合中添加一定的数据;(也有一定的问题,就是数据量不好控制)

解决方法:
public static void main(String[] args) {
	//xxx是大量的文本文字
    String str = "xxx";
    list = new ArrayList<>();
    int flag = 0;
    while (flag < 2000000000) {
        list.add(str);
        flag++;
    }
    System.out.println("xunhuanzhixingwanbi...");
    try {
        Thread.sleep(2000L);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    System.out.println("neicungaofuzai......");
    try {
        Thread.sleep(86400000L*30);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    System.out.println("one month");
}

执行脚本限制jvm内存参数:

nohup java -jar -Xms29480m -Xmx30480m xxx.jar &
效果:

磁盘: 思路:

磁盘占用率比较简单,找一些大文件,多复制几份就可以啦,这里不过多赘述;

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/306172.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号