When the crap hit's the fan, nagios can really get backed up. I'm not sure how to deal with it. I'm running over 1000 checks every 5 minutes, and the CPU load is very high. So when a check fails, there may be 300 other checks that will fail also. I have parent hosts defined, but am not using host/service dependencies. I found that the host/service dependency take too long to figure out where the problem is at. Sooooo, a service fails, then I get tons of "unreachable", things just get real ugly.
Bottom line, I need more help on this subject too.