shell程序获取互联网公司web server 信息(伪多线程shell程序)
来源:互联网 发布:匡恩网络 发工资 编辑:程序博客网 时间:2024/06/07 20:34
一.问题来源
想得到当前互联网公司的web server是哪个类型的?(Apache Nginx Lighttpd)所以编写此程序。主要统计baidu Google alibaba tencent(qq) taobao renren sina 京东 凡客 yahoo 盛大 网易 搜狐 畅游 等公司的web server 。当然,也有可能得到的是反向代理服务器。这得具体看公司的后台系统架构了。
二.程序
1.源码
vi ab.sh
2.说明&执行程序
通过ab 网站主页,然后把得到信息重定向到 一个文件中,然后再从该文件中过滤信息,统一记录到 /tmp/web_server.log中
3.执行结果,通过查看 /tmp/web_server.log 得到网站web server信息(有可能是反向代理服务器)
4.简单分析结果
sohu.com 用的 web server 是 SWS (这个有可能是自己开发的,有可能是用的SWS)
google.com 用的 web server 是 gws
baidu.com 用的 web server 是 BWS
taobao.com 用的 web server 是 nginx
还有很多,看3的结果
三.伪多线程与单进程脚本对比
1.先看单进程的程序
vi 1_ab.sh
2.说明
上面的单进程程序,只用一个进程实现,很简单就不解释了。具体统计web server实现与伪多线程程序类似
3.两程序执行效率对比
4.分析
可以看到 伪多线程程序明显比单进程程序快
其实,如果在执行 ab.sh的时候可以 ps -ef | grep ab.sh一下,就会发现不同了
可以发现: 伪多线程程序 ab.sh 是 由 进程号为 26846 的进程生成一些子进程,这些子进程来执行,完成统计工作。
而单进程程序 1_ab.sh 是由 一个进程自己完成所有工作。
如果仔细阅读上述程序 ab.sh 和 1_ab.sh ,会发现另一个不同点,1_ab.sh 只需要写入两个文件 ,而 ab.sh 则需要写入19个文件,这是因为ab.sh每个子进程自己维护一个 ab_$company_name.log文件,也就是说,每一次 ab 一个 网址,比如 baidu 那么这次执行结果就 重定向到 ab_baidu.com.log中。这样 ab.sh 要打开的文件次数比1_ab.sh多。所以下面总结一下这两程序的不同点。
5.ab.sh与1_ab.sh不同
其一.ab.sh是伪多线程的(一个母进程,多个子进程),而 1_ab.sh是单一进程 所以ab.sh是不是应该比1_ab.sh快呢?是不是可以实现并行处理呢?
其二. ab.sh打开的文件多,需要写入的文件多,而1_ab.sh写入的文件少。是不是1_ab.sh连续写的数据多,ab.sh随机写的数据多?那为什么ab.sh比1_ab.sh快呢?
四.如何控制ab.sh的并发量
请参看下文
声明:本文档可以随意更改,但必须署名原作者
作者:凤凰舞者 qq:578989855
- shell程序获取互联网公司web server 信息(伪多线程shell程序)
- Linux Shell 多线程执行程序
- shell中获取程序输出
- Shell程序
- linux Web服务程序监控shell脚本
- linuxC程序中获取shell脚本输出
- linuxC程序中获取shell脚本输出
- linux程序里面 获取shell命令结果
- 一个Shell程序
- shell程序总结
- 虚拟shell终端程序
- shell是一种程序
- 第一个shell程序
- shell 启动程序
- 程序启动脚本 shell
- shell程序例子
- shell脚本程序练习
- shell 【调试脚本程序】
- android--设置TextView部分文字的颜色和背景(高亮显示)
- epoll使用详解
- GetLastError
- 解决WIN2008 R2 x64未注册Microsoft.Jet.OLEDB.4.0程序错误
- ubuntu 64bit arm-linux-gcc: No such file or directory 问题
- shell程序获取互联网公司web server 信息(伪多线程shell程序)
- android log.
- 控件的调用和设置
- 关于FF和IE在Javascript和CSS的区别的收集
- php几个缓存相关的系统函数
- Groovy 1.8 新特性: 原生 JSON 支持
- 【zz】C++开发者快速学习Objective-C语言核心语法
- [转]海量数据面试题整理
- Swing 小记