SpringBoot中间件使用之EventBus、Metric、CommandLineRunner

1、EventBus

使用EventBus 事件总线的方式可以实现消息的发布/订阅 功能,EventBus是一个轻量级的消息服务组件,适用于Android和Java。

// 1.注册事件通过 EventBus.getDefault().register();

// 2.发布事件 EventBus.getDefault().post("事件内容");

// 3.监听事件,通过在方法上添加注解 @Subscribe实现,也可以通过参数来实现事件的优先级以及其他类型,具体的参考注解参数。

参考源地址 https://github.com/greenrobot/EventBus

2、CommandLineRunner

这个接口用于项目启动之前,预先加载数据。例如启动时加载数据菜单、权限等各种配置信息,或者缓存信息等。这个方法只会在整个应用生命周期内执行一次。

CommandLineRunner 是一个函数接口,用户可以自定义实现该接口,具体实现run方法。任何在上下文容器之内的bean都可以实现run方法,如果存在多个该接口实现类,可以通过@order注解,指定加载顺序。

参考地址:https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/CommandLineRunner.html

3、Metric

这个是一个轻量级的监控工具,支持开发者自定义监控的指标。开发者可以监控各个接口或者线程等情况,是一个个性化的监控工具。

他提供了以下三个功能:

1、Metric 注册

2、 五种指标监测类型:仪表、计数器、直方图、仪表和计时器。

3、报表监测值得输出方式:JMX, the console, CSV files, and SLF4J loggers.

参考文章:https://metrics.dropwizard.io/4.2.0/manual/core.html

相关推荐
达达尼昂2 分钟前
Claude : 如何设计可控的agent-loops
前端·人工智能·后端
lambdax3 分钟前
Celery 心跳任务内存膨胀排查与修复全记录
后端
SamDeepThinking7 分钟前
函数式编程:用BiFunction消除多类型分支的代码重复
java·后端·面试
IT_陈寒32 分钟前
Redis持久化丢失数据的坑,这次终于被我填平了
前端·人工智能·后端
葫芦和十三2 小时前
图解 MongoDB 24|分片为什么存在:垂直扩容的天花板
后端·mongodb·agent
有趣的老凌2 小时前
用 Vibe Coding 搭了一个完整小程序「一定能成」
前端·javascript·后端
葫芦和十三9 小时前
图解 MongoDB 23|两地三中心:跨可用区部署怎么扛机房故障
后端·mongodb·agent
勇哥java实战分享11 小时前
PaddleOCR 太慢?我换成 RapidOCR 后,速度直接起飞
后端
苏三说技术15 小时前
LangChain4j 和 LangGraph4j,哪个更好?
后端