怎么在网站维护中监控、图示及装备?
发表于 2024-07-27
浏览量
构建用于测量(图示、装备应用程序)和监控(报警)的系统是一项很值得做的事情,这些系统是基础架构非常重要的核心内容,而且做起来也不是那么难。但据我所知,这些系统却常常被忽略。如果没有测量的话,很难对系统实现主动的管理。历史的测量数据对于容量规划和错误排查尤其有用。
监控与测量技术分为三类:第一类是对系统进行检测,发现问题时进行报警;第二类是记录测量数据,并以图表方式显示;第三类试图将第一类和第二类结合起来,但最后总是两者都做不好。我选择使用两个系统,而不是一个试图包揽所有事情但最后每一样都不好的综合系统。
在我看来,Nagios用于监控就足够好了,尽管学起来比较困难。基于RRD工具的系统,如Cacti、 Munin、 Ganglia适用于保存历史测量数据。我对Cacti有点偏爱,不仅因为我认为它是一个极好的工具,而且还因为我写了一些Cacti的图形模板。这些模板可以在htp:/codegoogle.com/p/mysgl-cacti-templates/处找到。虽然会有不同意见,我还是认为MySQ几L模板对任何图示系统来说都是最好的。尽管有困难,我还是认为,使用一个被广泛使用的系统是明智的,这样,在遇到问题时,可以找到能够提供帮助的人。你可能会对任何技术都存在的局限性而感到气恼,但我敢肯定,要解决这个问题,比看起来要难得多一一对系统管理员来说,重复发明轮子是打发时间的最好方法。
装备(Instrumentation)是另一个话题。正如MYSQL难于网站建设优化是因为很难获得关于其工作的详细诊断数据一样,应用程序的性能也同样是一块难啃的骨头。你需要这样的信息:应用程序执行的任务,这些任务执行了多少次,花费了多长时间。有时候你不需要自己来获取这些信息,New Relic为Rails:开发人员提供了一款极好的产品,而大多数程序设计语言也都有简便易用的性能测量工具(profilers)a但即使是一些简单的、针对特定的应用程序关键活动的装备,也都是非常有价值的。
监控与测量技术分为三类:第一类是对系统进行检测,发现问题时进行报警;第二类是记录测量数据,并以图表方式显示;第三类试图将第一类和第二类结合起来,但最后总是两者都做不好。我选择使用两个系统,而不是一个试图包揽所有事情但最后每一样都不好的综合系统。
在我看来,Nagios用于监控就足够好了,尽管学起来比较困难。基于RRD工具的系统,如Cacti、 Munin、 Ganglia适用于保存历史测量数据。我对Cacti有点偏爱,不仅因为我认为它是一个极好的工具,而且还因为我写了一些Cacti的图形模板。这些模板可以在htp:/codegoogle.com/p/mysgl-cacti-templates/处找到。虽然会有不同意见,我还是认为MySQ几L模板对任何图示系统来说都是最好的。尽管有困难,我还是认为,使用一个被广泛使用的系统是明智的,这样,在遇到问题时,可以找到能够提供帮助的人。你可能会对任何技术都存在的局限性而感到气恼,但我敢肯定,要解决这个问题,比看起来要难得多一一对系统管理员来说,重复发明轮子是打发时间的最好方法。
装备(Instrumentation)是另一个话题。正如MYSQL难于网站建设优化是因为很难获得关于其工作的详细诊断数据一样,应用程序的性能也同样是一块难啃的骨头。你需要这样的信息:应用程序执行的任务,这些任务执行了多少次,花费了多长时间。有时候你不需要自己来获取这些信息,New Relic为Rails:开发人员提供了一款极好的产品,而大多数程序设计语言也都有简便易用的性能测量工具(profilers)a但即使是一些简单的、针对特定的应用程序关键活动的装备,也都是非常有价值的。