15

Spring Boot actuator 提供了一些端点,例如健康、指标、信息。它还允许我们编写自己的自定义端点。

我有一个要求,我需要将一些 Dropwizard 指标统计信息公开为端点。最新的 Spring-boot 确实支持 dropwizard 指标,但它不符合我的要求,所以我计划拥有自己的 Web 端点/stats

但现在我无法决定它应该是普通Controller执行器还是定制执行器Endpoint。这两个术语有什么区别?

PS:问题似乎是基于意见的,但答案应该足够简单。

4

1 回答 1

12

端点是控制器的更具体或特殊的版本。

端点不依赖视图(例如 JSP)在 HTML 中呈现模型数据,而是简单地将要写入的数据直接返回到响应的主体(类似于在控制器中执行 @ResponseBody)。

由于以下原因,Actuator Endpoint 是更好的选择:

  1. Endpoints 旨在执行在 HTTP 上打印 Object(Json) 的高度特定任务,这正是您在这里想要做的。
  2. 将 monitor-n-manage 代码与特定于应用程序的代码分开。
  3. 保持事物清洁和凝聚力
于 2016-03-15T12:30:44.653 回答