also quoting the replied to text.
Steven D. Morrey wrote:
>
>> How? Using no delay at all between attempts would be
>> rather devastating, since spinlocks eat CPU like mad.
>
>
>
> Stop thinking small. When you have many thousands of checks
> to run, tiny delays persist and add up. A second here, a
> second there, and pretty soon you're talking real time.
>
>
Well, stop thinking small yourself and use a distributed solution
>
>> There's no real design issue.
>
>
>
> The design issue is that delays build up and become very
> observable.
>
>
That's not a design issue, it's just a fact of life.
> I've removed the sleep in my version of nagios and throughput difference is DRAMATIC.
Do you have a lot of unparallelizable checks?
> That said other things are having a hard time running on the same machine.
Including plugins and the reaper threads of Nagios
> I'm going to sprinkle some yields where the sleeps are at and see if that helps, I'll keep you apprised.
>
That's a very good idea (replacing sleep(1) with sched_yield()). Just
make sure it keeps on working on AIX and Solaris and stuff like that,
where Nagios compiles and runs just fine today.
I'd prefer if you did it with a helper function to make it easier to
support various operating systems that need it without duplicating a
lot of code.
--
Andreas Ericsson [email protected]
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.
This post was automatically imported from historical nagios-devel mailing list archives
Original poster: [email protected]