cbnh2441
cbnh2441
采纳率0%
2020-06-23 15:52 阅读 231

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

20

我现在有一个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条回答 默认 最新

  • caozhy 从今以后生命中的每一秒都属于我爱的人 2020-06-23 18:54

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

    点赞 评论 复制链接分享

相关推荐