问题描述
我在 kubernetes 环境中部署了一个 EJB 应用程序 (Ear)。
我正在尝试使用自由 (https://openliberty.io/docs/20.0.0.12/health-check-microservices.html) 支持的微个人资料健康功能实施健康检查(活跃度和准备情况)。
我是否需要部署单独的 Web 应用程序或仅在 EJB 模块(没有 Web 模块)中实现运行状况检查类。
解决方法
这取决于你想做什么。您可以将实现 livness/readiness 的类添加到现有的 Web 模块中,也可以创建单独的类,只进行各种检查。
最佳做法是在提供服务的同一模块中进行检查,以防您以后希望将这些服务分离到不同的容器中。
在 Liberty 中,来自所有 Web 模块的检查被汇总并计算在一起,因此如果您有多个检查,您可能会看到如下内容:
{
"checks":[
{
"data":{},"name":"myejb-bean","status":"DOWN"
},{
"data":{},"name":"service1","status":"UP"
}],"status":"DOWN"
}