You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on May 5, 2023. It is now read-only.
Hi Team, I recently noticed that HealthCheckServlet is added to application.
Assumption is anything related to state of application ( & not application itself) should be honoured at admin endpoints & not at application level.
This can be critical in the cases where application port is already heavily invoked & having health check there would put additional burden on application.
My ask is, can we register health check at admin port or at least provide way to configure it depending on user's input ?
Let me know if this sounds good & I can raise a PR.
The text was updated successfully, but these errors were encountered:
The HealthCheckServlet needs to be registered on the application context and not the admin context in order to fulfill its role of reporting on the health of the application, including whether the application is capable of responding to requests.
In Dropwizard, the application context and admin context are each configured with their own separate worker thread pools. If the servlet was registered on the admin context like you are suggesting, in a heavily congested/deadlocked application where there are no available worker threads, the application would no longer be able to process new requests but the servlet on the admin context would still be able to respond that the instance was healthy.
In that same scenario, but with the servlet on the application context instead, the servlet would be subject to the same congestion/deadlock and be unable to respond to a health check request. This lack of response serves as an implied unhealthy status which should ultimately result in the instance no longer receiving new requests.
In terms of performance, the health check responses should be extremely inexpensive as it is effectively just returning the response based on a boolean flag that is being updated in the background.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Hi Team, I recently noticed that HealthCheckServlet is added to application.
Assumption is anything related to state of application ( & not application itself) should be honoured at admin endpoints & not at application level.
This can be critical in the cases where application port is already heavily invoked & having health check there would put additional burden on application.
My ask is, can we register health check at admin port or at least provide way to configure it depending on user's input ?
Let me know if this sounds good & I can raise a PR.
The text was updated successfully, but these errors were encountered: