手机
当前位置:查字典教程网 >脚本专栏 >linuxshell >Shell脚本实现把进程负载均衡到多核CPU中
Shell脚本实现把进程负载均衡到多核CPU中
摘要:有时候,由于架构设计或其他业务本身特点原因,导致有些应用使用CPU很不均衡,所以业务处理集中在一个CPU上,而其它CPU闲得在睡觉。这里有个...

有时候,由于架构设计或其他业务本身特点原因,导致有些应用使用CPU很不均衡,所以业务处理集中在一个CPU上,而其它CPU闲得在睡觉。这里有个简单的优化方案实现将各个线程绑定到到多个CPU,从而实现性能的提高。

虽然CPU是一个不错的思路,但是不是杀手锏,其性能能提高多少依赖于各个线程的性能分布是否均匀;所以最好的办法是优化你的程序架构。

在这里分享一个Shell脚本(脚本名为bindcpu2p.sh),通过该脚本可将该进程均匀负载到各个CPU上。

复制代码 代码如下:#!/bin/sh

pids=`/sbin/pidof $1`

cpunum=`cat /proc/cpuinfo | grep processor | wc -l`

cpuidx=0

for pid in $pids

do

/usr/bin/taskset -cp ${cpuidx} ${pid}

cpuidx=$(($cpuidx+1))

cpuidx=$(($cpuidx%$cpunum))

echo $cpuidx

done

使用方法 $> ./bindcpu2p.sh progressname

注:请兄弟们检视下代码,能帮忙调试下就最好不过了。

【Shell脚本实现把进程负载均衡到多核CPU中】相关文章:

用shell脚本实现自动切换内网和外网实现高可用

Shell脚本对文件中的行、单词、字符进行迭代输出示例

shell脚本转发80端口数据包给Node.js服务器

SHELL脚本监控JAVA进程的代码

Shell实现的Oracle启动脚本分享

shell脚本监控mysql主从状态

执行Shell脚本的4种方法及区别介绍

5个实用的shell脚本面试题和答案

shell编程之实现windows回收站功能分享

Shell脚本数组用法小结

精品推荐
分类导航