如何监控服务器的运行情况
在去年六月份年的一次事故中,淘宝服务器断电一个小时,损失1000万左右在线交易金额。
在这个网站竞争日益白热化的时代,在大家在拼点子、拼
网站性能很重要,大家都知道,正因为大家都很清楚,从一开始就很清楚。但是因为精力逐渐分散于
但是同时,作为小站站长,我可不想到晚坐在电脑前监控我的网站服务。当然,我更加不愿意花钱雇两个网管人员24*7得监控我的网站,成本太高了。因此,怎么快速高效、低成本的网站监控成为迫待解决的一个问题。
经过一段时间的研究,基本上有些成果,拿出来跟大家分享
所谓监控,又分为内部监控和外部监控之分。
一、内部监控内部监控,也就是通过编写程序和脚本,部署在服务器上,监控服务器上的内存、CPU、磁盘读写等等情况。
现在我能实现的方式有,通过分析各个监控令(top、vmstat、free)捕获的监控值的情况。
举个例子,我们站长都知道,free可以看到内存利用情况,一般free+buffers+ cached的值可以看作剩余可用内存的综,通过定期读取这个值与自定义的阈值作比较,一旦超过阈值,通过sendmail等令给我们发邮件。
其他的CPU、磁盘、进程等等,与此类似。
二、外部监控在内部监控的基础上,能不能在别人不登陆我们服务器的基础上,让其监控我们的服务。
特别是,如果能有一种方式,通过模拟最终用户的行为对我们的网站业务从外部进行监控,一旦“模拟用户”出现不满意的体验,也就是网站服务出现异常,可以及时地通知我们,邮件或者电话、手机短信都有可能,将大大减少我的工作量。
要求比较高,不能自己去做吧,OK,网上找找,google helps me,网络上,真的是你能想到的什么东西都有。还真发现了几个类似的服务。
1. 365uptim网站站点" rel="nofollow" />
服务方面,对于
2、Internetsupervision(国外的)
网址:http://internetsupervisio网站站点" rel="nofollow" />
按照其网站上的介绍,监控集中在网站的可达性、性能和内容上。他们提供有五个人工的监控地点,分别地处Washington DC, Detroit, Chicago, Los Angeles和Santiago。另外还有两个远程检查点在Gloucester, UK和Sydney。
服务方面,对于
3、Monitwitter(国外的)
网址twitte网站站点" rel="nofollow" />
网址:http://youmonitor.us/
网站提供的服务基本上满足了我的个性化要求。
打开首页,不用注册可以体验下她的外部服务,对单个网站进行即时监控:
这里给出了五个城市的即时访问速率统计,而且有三个分别来自中国杭州、上海、北京的监控点,这是我比较满意的一个地方。
除了给出平均访问速度外,它同时提供一个与Google、Yahoo等著名网站的速度比较表,从中可以直观的看出你的网站访问速度与这个网站到底有多大的差距。
多测试两次,发现:对同一网站的监控每次出来的监控地点显示不会都是一样的,说明她的监控地点是比较多的。据其YMU自己宣称,监控点遍布全球。
注册登陆之后,发现对方是监控地点配置我的,比如说我的网站面对的是中国大陆用户,我配置我的监控地点在中国大陆。她的监控时间间隔配置最小可以达到1分钟。
通过在 YMU上注册服务之,同时向监控网络提供一个监控点,我现在享受到的服务是这样的:
(1)来自中国10个不同地点的模拟客户端监控
(2)每个来源5分钟的监控时间间隔
(3)邮件通知服务
上面都支持邮件报警和短信报警。