centos系统调优(centos如何安装软件)
记录一次云服务器(Centos7)JVM内存调优过程
一台配置了4G内存的云服务器,运行着YDService、nginx、tomcat、node、vue、mysql、redis、nacos以及gateway服务。在部署了包含console、mobile、commonService三个业务服务后,发现服务器内存占用率超过90%,导致nacos服务被强制挤下线,进而影响了业务服务的可用性。通过使用top命令查看服务器内存占用情况,并通过jps命令查找具体进程号,发现xmx参数设置约为1G。初步分析结果显示,三个业务服务占用内存过高,引发了内存不足的问题。
为了解决这一问题,需要分析各业务服务的具体承载强度,按需分配内存,并使用带内存配置参数的启动命令来启动服务。将核心业务集中到commonService模块处理,而console和mobile模块则通过feign进行RPC调用commonService服务,以减少内存消耗。针对非核心业务模块,console和mobile模块配置内存参数为-Xms128M-Xmx256M-XX:PermSize=128M-XX:MaxPermSize=256M。
实施解决方案后,业务服务运行恢复正常,客户端及移动端功能也得以保持正常运行。nacos服务运行稳定,服务器内存占用率保持在85%左右,问题得到了有效解决。
为了帮助大家更好地理解如何管理JVM内存和优化服务内存使用,文章中还详细介绍了jps和jmap等常用命令的使用方法。这些命令对于监控和调试JVM内存使用、分析内存状态以及生成dump文件等场景非常有用。通过这些工具,可以更直观地理解内存使用情况,从而采取更有效的内存管理策略。
Intel 与 AMD 跑fluent的调优-测试数据
本文详述了Intel与AMD在运行fluent软件时的性能测试与调优策略。
测试环境涉及三种配置:Intel 8375c ES CPU*2 64核心,AMD EPYC 7763 CPU*2 128核心以及学校超算平台-曙光国产CPU 128/256/512核心。系统与软件统一采用Win11及CentOS7,fluent版本为2023 R1。测试算例使用3000W网格普通算例文件。
具体测试数据揭示了Intel与AMD在不同环境下的性能表现:Intel CPU在Win11环境下无需调整BIOS及系统调优,性能优势显著。在CentOS7中,调整优化后的性能提升相对有限,仅为20多秒。AMD CPU虽然核心数量较多,但在Win11下,若未进行调优,性能甚至可能低于普通台式机。然而,当在Linux环境下运行时,AMD CPU性能表现稳定,无需额外优化即能发挥潜能,且经过调优后,性能提升可达100多秒。
综上所述,针对Intel与AMD在fluent软件运行中的性能测试与调优策略,Intel CPU在Win11环境下表现出色,无需调整即可实现高效运行。AMD CPU则需根据操作系统进行相应的优化调整,以充分发挥其性能优势,特别是在Linux环境下。
云主机 CentOS Kernel Hung住处理办法
云主机无法ssh及ping通,VNC查看提示“echo 0>/proc/sys/kernel/hung_task_timeout_secs disables this message”
1.重启云主机进行恢复无效,怀疑云主机底层资源有问题
2.查看宿主机上云主机的磁盘进程,有ntp未结束进程,sudo kill-9$PID将所有进程杀死
climc server-syncstatus后台同步状态
climc server-start
3.进入云主机排查
sar-r查看内存利用率,是否有大量free
sar-u查看CPU利用率
4.如果没有core dump,可以检查/var/log/message,搜索“echo 0>/proc/sys/kernel/hung_task_timeout_secs” disables this messageand“blocked for more than 120 seconds”
内存数据落盘时引发的故障
默认情况下,Linux会最多使用40%的可用内存作为文件系统缓存。当超过这个阈值后,文件系统会把将缓存中的内存全部写入磁盘,导致后续的IO请求都是同步的。将缓存写入磁盘时,有一个默认120秒的超时时间。出现上面的问题的原因是IO子系统的处理速度不够快,不能在120秒将缓存中的数据全部写入磁盘。IO系统响应缓慢,导致越来越多的请求堆积,最终系统内存全部被占用,导致系统失去响应。
另外,在进程处理于可中断的睡眠状态S时<需要看dump>,进程要等待如套接字、信号量被挂起,进入到对应事件等待队列中的的这个时间太长,占用了队列空间使进程长时间处于阻塞状态,影响了进程队列的有序调度
根据应用程序情况,对vm.dirty_ratio,vm.dirty_background_ratio两个参数进行调优设置。
推荐如下设置:
# sysctl-w vm.dirty_ratio=10
# sysctl-w vm.dirty_background_ratio=5
# sysctl-p
如果系统永久生效,修改/etc/sysctl.conf文件。加入如下两行:
#vi/etc/sysctl.conf
vm.dirty_background_ratio= 5
vm.dirty_ratio= 10
重启系统生效。