Skip to content

Reduce backend load by using passive health indicators #6407

@mp911de

Description

@mp911de

Health-checks are cheap checks to validate the health of a particular system. Checks are used to be called regular and often (5 to 10-second intervals) by monitoring systems, hardware load-balancers, and other clients.

A health check should primarily report the health of the current system by using all known aspects of the system to tell whether it's healthy. Ideally, it should not obtain that details from external sources. While it's convenient to retrieve external data to compose the health check state, external access generates additional load. This can be totally fine for some cases but in other scenarios (e.g. many application instances create load on few database hosts/MongoDB servers/...), health checks can cause load that helps to kill otherwise healthy backends.

Health checks should be able to report also on locally available data (passive health check) without invoking operations on remote hosts. This could be done by using local metrics (JDBC/JMS/generic connection pool utilization, connection state for persistent TCP connections)

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: declinedA suggestion or change that we don't feel we should currently apply

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions