Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41328
  • 博文数量: 7
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 70
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-17 14:57
文章分类
文章存档

2014年(7)

分类: Web开发

2014-10-21 19:37:03

    web服务器的开发者,应该对cacti不陌生, cacti使用的是rrdtool来保存cpu,memory使用率的. rrdtool每5分钟记录一次这些信息, 
它也可以制作出图表, 这些图表都是png格式的. 不过, 我个人认为, rrdtool制作出来的图表并不好看, 也不利于查看.  对于web服务器,
有时还需要统计再线人数, 访问次数等信息
, 这需要服务器开发者自己来搭配方案.
    首先来说说java服务器上使用哪种数据保存方式合适. 一种是存入关系型数据库中, 例如mysql, 但是我认为使用rrd来保存更为
合适. 为什么这么说呢?
   1. rrd是环状数据库, 即数据写满之后, 就开始覆盖前面的数据, 只要设定好想要保存的最小时间长度(例如1年), 就不需要再担心数据
记录一直增长的问题
   2. rrd是专业的以时间序列来记录数据的工具, 所谓的专业的事,由专业的人来做. 它在数据插入与查询方面都是很高效的, 而且
它还有一些专门适用于数据统计的概念. 例如, 假设每1分钟保存一次数据, 当查询一年的统计信息时, 需要60*24*365条记录, 这个数据
量会有点大, 但是rrd可以设定每天保存一次统计值, 这样就只要365条记录.

    rrd接口参数中的一些概念对于初学者来说, 确实比较晦涩, 但这不是问题.

    其次来说说图表制作工具. extjs也提供了多样的图表功能, 不过另一个选择更好, 就是highcharts.  highcharts可以使用html
的svg图形工具来制作图表, 界面很优美. 

    下图是我使用rrd4j(rrd的java版)+highcharts制作出来的在线用户统计图表(去掉了表头/图例等敏感信息). 下篇文章, 我会讲述rrd4j
的基本使用方法

    
阅读(3121) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~