Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11132
  • 博文数量: 2
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 30
  • 用 户 组: 普通用户
  • 注册时间: 2016-10-26 08:27
文章分类

全部博文(2)

文章存档

2017年(2)

我的朋友
最近访客

分类: 系统运维

2017-09-27 23:14:53

shell执行一般都是单进程运行,为了提高进程并发性,那怎么解决呢?
场景1:
限定进程并发数量完成批量任务。

#!/bin/bash
echo -e `seq -s "\n" 1 40` > host
while read line;
do
psnum=`ps -ef | grep sleep | grep -v grep | wc -l`
while [ $psnum -gt 5 ];
do
sleep 6
psnum=`ps -ef | grep sleep | grep -v grep | wc -l`
done
(sleep 6;echo $line,$psnum) &
#sleep 3
done < host

场景2:
不限定进程数,提高并发能力。
#!/bin/bash
echo -e `seq -s "\n" 1 40` > host
while read line;
do
(sleep 6;echo $line ) &
done < host
wait


#附Python列表的交、并、差运算
1. 获取两个list 的交集
print list(set(a).intersection(set(b)))


2. 获取两个list 的并集
print list(set(a).union(set(b)))


3. 获取两个 list 的差集
print list(set(b).difference(set(a)))

#探测对端网络连通性

wget  --no-cache --no-http-keep-alive --no-cookies --no-proxy --spider --tries=1 --timeout=1 --no-check-certificate 31.17.8.144:11050 2>&1 | grep  connected >/dev/null;echo $?

阅读(1196) | 评论(0) | 转发(0) |
0

上一篇:RabbitMQ集群搭建和日常运维

下一篇:没有了

给主人留下些什么吧!~~