生产实践:
使用shell脚本并发查询存在单点容器的服务树节点
学习技巧:
curl使用、模拟队列并发、fifo管道
脚本内容:
选取404个服务树节点,通过shell脚本并发查出有单点容器的节点并输出单点容器ip、服务树节点信息,使用模拟队列和fifo管道两种查询方式。可以先了解下shell脚本并发多进程:shell脚本实现并发多进程
> 模拟队列并发:
> fifo管道:
由上图可以看到fifo管道执行比queue执行要快,fifo执行无序而queue执行是有序的,不过相对于去年测的结果10个并发两者时间差不多,加到20个并发fifo将近快一倍(queue:42s,fifo:21s),加到30个并发(queue:38s,fifo:15s),不知道是不是api优化了,还是有别的原因。具体两者效率相差多少请大神们测试后告诉我下,多谢多谢。以下是一年前用的总结:
实际生产中用脚本测试:使用curl请求400多个服务树容器信息,使用管道并发执行(42s)比队列执行(122s)的大约快3倍(都是10个并发),不过管道执行是无序的,加大最大并发数速度还能提升速度(提到20个并发费时22s),队列在10个并发进程数时基本是效率最大值,再增大进程数也提升不了多少,不过队列是按顺序执行的,看什么需求选择吧。