排查zabbix web部分页面打开慢的问题
最近同事反应zabbix web页面打开速度慢。需要优化
目前监控规模:
监控设备3800+,监控项38W个,触发器15W个,每秒新值3900
排查过程:
先F12查看打开页面的时间,同时打开数据库慢查询跟踪:
访问主机菜单的时候,wait for server response 花去了3.4s的时间。其他过程仅花费1ms左右
如此看来是server返回速度慢。
再看数据库慢查询日志,有3条查询日志
SELECT COUNT(DISTINCT i.itemid) AS rowscount,i.hostid FROM items i WHERE i.type<>9 AND i.flags IN (0,4)
AND i.hostid IN (x) GROUP BY i.hostid;
SELECT DISTINCT COUNT(DISTINCT t.triggerid) AS rowscount,i.hostid FROM triggers t,functions f,items i WHERE
i.hostid IN (x) AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND t.flags IN (0,4) GROUP BY i.hostid;
SELECT DISTINCT COUNT(DISTINCT g.graphid) AS rowscount,i.hostid FROM graphs g,graphs_items gi,items i WHERE
i.hostid IN (x) AND gi.graphid=g.graphid AND i.itemid=gi.itemid AND g.flags IN (0,4) GROUP BY i.hostid;
将3条sql分别执行,时间分别为0.7s,1.3s,0.5s
经检查,sql为封装好的,索引已添加。暂时没有什么好的办法。唯一的办法,可能就是清理垃圾数据,比如禁用的主机,禁用的监控项,禁用的触发器等,效果应该不太好