• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >linux shell > Shell脚本实现把进程负载均衡到多核CPU中

Shell脚本实现把进程负载均衡到多核CPU中

作者:junjie 字体:[增加 减小] 来源:互联网

junjie 通过本文主要向大家介绍了负载超过shell脚本,shell脚本,shell脚本编程,shell脚本学习指南,shell脚本实例等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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

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

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

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</div>
使用方法 $> ./bindcpu2p.sh progressname

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

</div>

您可能想查找下面的文章:

  • shell脚本监控系统负载、CPU和内存使用情况
  • Shell脚本实现把进程负载均衡到多核CPU中

相关文章

  • shell对比文件内容脚本分享
  • virtualbox 中的linux 共享文件的方法
  • Linux 中makefile的命令包定义及使用
  • shell脚本结合iptables防端口扫描的实现
  • Shell正则表达式学习笔记
  • 零基础入门篇之Linux及Arm-Linux程序开发笔记
  • Shell脚本中判断变量为数字的3种方法
  • linux shell实现判断输入的数字是否为合理的浮点数
  • Shell脚本中判断输入变量或者参数是否为空的方法
  • CentOS 6.x系统升级Python到2.7版本的Shell脚本分享

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Shell脚本中实现切换用户并执行命令操作
    • Linux Shell 常见的命令行格式简明总结
    • SVN限制message字符个数及格式的实例
    • Linux基础命令日常积累
    • linux下安装oracle后使用命令行启动的方法 linux启动oracle
    • Shell脚本实现批量下载网络图片代码分享
    • 建立基于虚拟用户的VSftpd服务
    • bash 循环中变量作用范围的问题分析
    • nginx 下安装配置 phpadmin报错的解决方法
    • shell编程中的字符串截取方法小结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有