五、 rrd_server设计
功能点:
【1】 作为后台Daemon服务运行:
该RRDServer程序能够在后台中不断的运行,并接受前台发送的命令,并根据命令作出相应的处理,例如装在rrd文件,更新rrd文件,从内存中提取数据等操作
【2】 支持网络通信:
RRDServer的运行模式类似于MySql服务器.RRDServer在指定的端口(从配置文件中获取)监听从网络中连接的主机,并与该主机建立连接,接受相应的命令,然后根据该命令做某种操作.命令格式和rrdtools保持兼容。
操作分为如下3种:
1. 获取当前RRDServer的配置信息(数据库目录,数据库备份目录,数据写磁盘时间间隔,RRDServer版
本,帮助文档等等一系列信息)
2. 执行RRDTool命令:
load命令: 将指定RRD文件名装在到内存中
delete命令: 将在内存中的rrd文件从内存中删除
create 命令:创建RRD文件(命令与原来RRD命令相同)
update命令: 更新RRD文件(命令与原来RRD命令相同)
fetch命令: 提取RRD文件中数据(命令与原来RRD命令相同)
info 命令: 获取RRD文件信息(命令与原来RRD命令相同).
3. 设置RRDServer配置信息命令
具体命令请参考下面的RRDServe使用手册.
【3】 RRD文件加载到内存:
将指定的RRD文件加载到内存中,与该RRD文件相关的操作都在内存中操作,例如fetch,updata.这样可以减少该rrd文件的磁盘操作,提高程序执行效率.
【4】 定期将或者根据客户端显式指示将内存数据同步的磁盘
装在在内存中的RRD数据文件,在内存中操作过一定的时间后,就要进行一下同步,以避免在发生事故时能够获取到之前的数据.这个时间间隔可以在配置文件中设置.同时该时间间隔也可以再现更改,以达到灵活的目的.
【5】 提取能够通过指定数据源名称:
在以前的RRD程序中,提取一定时间段的数据时,所得到的是所有数据源的数据,但是有时我们只关心其中的某几个数据源,该RRDServer能够根据你的需要输出指定的数据源的数据.
阅读(1840) | 评论(0) | 转发(0) |