每天都在维护学校的教务系统,访问量小的时候还好,访问量大的时候server时不时就崩溃。。同学写了一个自动重启Web server的小程序,果断拿来学习一下,收获很大,现总结如下。
Web server部署在Linux操作系统上,IDE用的是Weblogic Workshop。如果访问量大到超过Weblogic连接池最大容量的时候,server就会崩溃。。Weblogic有个自带网页的控制台console,里面有个监控页面Monitor。显示了当前的连接数,最大连接数等等数值。所以可以写程序实时抓取监控页面的数据,来决定什么时候自动重启。
使用wget命令来下载网页,用system命令来执行语句。
如 wget http://www.baidu.com -O baidu_index.html
这样就在当前目录下,抓取到了百度的主页到baidu_index.html文件下。
写在程序里就用 system("wget http://www.baidu.com -O baidu_index.html"); 运行后相当于执行了上面的命令。同理,写system("startWeblogic.sh &");就相当于重启Weblogic。
这样就简单了,使用wget下载到监控页面后,读到当前的连接数,如果大于一个值就重启就搞定了~(因为监控页面的框架是固定的,所以在固定的行数读数字就好了O(∩_∩)O~~)。
写完了程序,想想自己还差得远啊,光光加油!