Commit graph

6 commits

Author SHA1 Message Date
Tobias Deiminger
d215cfd568 Use a BlockingCollection to avoid busy loop in REST API threads
The former implementation had 5 threads permanently spinning fast
(10ms sleep) while waiting for a REST connection to process.
This causes higher load in general and it breaks systems where
"Turn on PowerShell Script Block Logging policy" is enabled,
because then each PS statement including Start-Sleep is logged -
resulting in 500 event log entries per second. It's a suggested
setting in some hardening guidelines.

We can easily replace the Queue with a BlockingCollection backed
by a ConcurrentQueue, which has the built-in feature to sleep until
there are new items. Now the REST API threads consumes zero CPU time
while waiting.
2022-03-30 11:13:03 +02:00
Lord Hepipud
e4ddbea4d6 Adds feature to detect frozen threads 2022-03-18 22:54:43 +01:00
Lord Hepipud
954e69fde1 Reworks background daemon for JEA context 2022-01-28 21:06:18 +01:00
Lord Hepipud
a23a40b23f Rewrite IfW service check daemon 2022-01-25 10:00:19 +01:00
Lord Hepipud
5ed5f0b5e2 Fixes Icinga for Windows memory leak 2021-12-09 17:22:48 +01:00
Lord Hepipud
253cb7f4dd Adds Rest-Api and Api-Checks into framework 2021-10-27 10:06:13 +02:00