Spring 控制器和端点之间的区别
Difference between Spring controller and Endpoint
Spring boot actuator 提供一些端点,如健康、指标、信息。它还允许我们编写自己的自定义端点。
我有一个要求,我需要将一些 Dropwizard 指标统计数据公开为端点。最新的 Spring-boot 确实支持 dropwizard 指标,但它不符合我的要求,所以我打算拥有自己的网络端点 /stats
但现在我无法决定它应该是普通的 Controller
还是自定义的执行器 Endpoint
。这两个词有什么区别?
PS: 问题似乎是基于意见,但答案应该足够简单。
端点是控制器的更具体或特殊的版本。
Rather than rely on a view (such as JSP) to render model data in HTML, an endpoint simply returns the data to be written directly to the body of the response(Similar to doing @ResponseBody in Controller).
Actuator Endpoint 是更好的选择,原因如下:
- 端点旨在执行在 HTTP 上打印对象 (Json) 的高度特定任务,这正是您想要在此处执行的操作。
- 将 monitor-n-manage 代码与特定于应用程序的代码分开。
- 让事情变得更干净、更有凝聚力
Spring boot actuator 提供一些端点,如健康、指标、信息。它还允许我们编写自己的自定义端点。
我有一个要求,我需要将一些 Dropwizard 指标统计数据公开为端点。最新的 Spring-boot 确实支持 dropwizard 指标,但它不符合我的要求,所以我打算拥有自己的网络端点 /stats
但现在我无法决定它应该是普通的 Controller
还是自定义的执行器 Endpoint
。这两个词有什么区别?
PS: 问题似乎是基于意见,但答案应该足够简单。
端点是控制器的更具体或特殊的版本。
Rather than rely on a view (such as JSP) to render model data in HTML, an endpoint simply returns the data to be written directly to the body of the response(Similar to doing @ResponseBody in Controller).
Actuator Endpoint 是更好的选择,原因如下:
- 端点旨在执行在 HTTP 上打印对象 (Json) 的高度特定任务,这正是您想要在此处执行的操作。
- 将 monitor-n-manage 代码与特定于应用程序的代码分开。
- 让事情变得更干净、更有凝聚力