cbnh2441 2020-06-23 15:52 采纳率: 0%
浏览 430
已结题

如何 提升 Windows Server 2012 标准版 CPU 使用率。

我现在有一个Java EE项目,部署环境是:
应用服务器:
CPU : Xeon(CPU) E7-4750 X2 32核
内存:32G
硬盘:SSD500G
操作系统:Windows Server 2012 Standand R2
Web中间键:Weblogic 11 (10.3.6)
数据库服务器:
CPU : Xeon(CPU) E7-4750 X2 32核
内存:32G
硬盘:SSD500G
操作系统:Windows Server 2012 Standand R2
数据库:Oralce 11G
现在用JMeter 做压力测试 ,强并发 300人,响应时间 平均21秒,最小值216毫秒,最大值 47秒,奇怪的是 应用、数据库 服务器CPU 使用率均低于 10%(5%-8%之间),我们对系统 做了如下优化:
修改了Windows 的注册表:
MaxUserPort=65534
TcpTimeedWaitDelay=30
关闭了CPU“归位”

    Weblogic 调整:
    内存增长到4G
    线程数 增加大到 1000个
    数据库连接池,1000,1000,2000

    Oralce 调整:
    内存增加到8G
    线程数 增加大到 1000个
    Session 增加大到 1000个

调整后,再进行压力测试,服务器 CPU 仍然使用率 小于 10%。 将 Weblogic 换成 Tomcat 后,问题差不多,没有明鲜改善。

    提示一下:5年前,处理过此类问题,就是把 应用服务器 的操作系统 换成  Windows Sever 2012 企业版,问题就解决。
    但当前客户只有标准版本授权,不能更换操作系统。求各位大神帮忙,如何解决此问题,万分感谢。
  • 写回答

1条回答 默认 最新

  • threenewbee 2020-06-23 18:54
    关注

    找到程序的热区(运算耗时最大的地方)
    尽量将程序改写成能并行执行的
    数据库少用事务,用细粒度锁,多线程代码少同步。
    另外,关闭CPU的超线程功能,在CPU占用率低的时候,可以提高性能。

    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题