- 论坛徽章:
- 33
|
回复 2# crazyhadoop
可以.
对于一般的管理中. 机器的监控多数采用snmp + ping . 但这有个问题, 就是 polling time, 一般的监控中. 都是定期执行的. 比如 每15分钟, 也有 每5分钟的.
但当机器太多时, 查询间隔就会增加, 因为监控进程无法控制更多的监控进程/线程了.
所以, 我想用 erlang 写一个 c/s 架构的应用. 或者称之为 agent / server 模式吧.
有一台(或多台)集中的server, 用来集中监控的信息.
每一台被监控的机器上有一个 agent, 用 erlang的 机制, 把它们连接起来, 在server 端 用监控树来监控每一个agent.
如果 agent 挂掉并且, 起不来了, 就说明被监控的机器down了, 或者忙到响应不过来了.
在中间, agent可以监控系统的资源使用情况, 定期(正常值时)/不定期(异常值需要马上向上汇报)向上汇报.
大概就是这个结构. 因为目前 erlang 能运行在绝大多数平台上, 所以, 这个 agent 应该比较合适.
更细节的技术问题, 我也没想好. 因为, 我对erlang还不熟. 选择它, 主要看重了它的监控树, 不用我自己来实现这一堆东西.
当然, 这个后面还有另外一个功能, 监控, 只是其中比较小的一部分.
|
|