下面针对 Prometheus、Zabbix、Nagios 和 Open-Falcon 这几种监控系统进行横向对比。
监控系统 | 开发语言 | 成熟度 | 扩展性 | 高性能 | 社区活跃度 | 对容器的支持 | 企业使用情况 |
Zabbix | C + PHP | 高 | 高 | 低 | 中 | 低 | 高 |
Nagios | C | 高 | 中 | 中 | 低 | 低 | 低 |
Open-Falcon | Go | 中 | 高 | 高 | 中 | 中 | 中 |
Prometheus | Go | 中 | 高 | 高 | 高 | 高 | 高 |
从开发语言上看,为了应对高并发和快速迭代的需求,监控系统的开发语言已经慢慢从 C 转移到 Go。不得不说,Go 凭借简洁的语法的优雅的并发,在 Java 占据业务开发领域、C 占据底层开发领域的情况下,准确定位中间件开发需求,在当前的开源中间件产品中被广泛使用。
从系统成熟度方面来看,Zabbix 和 Nagios 都是老牌的监控系统:Zabbix 是在 1998 年出