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

相关推荐
whinc5 分钟前
Rust技术周刊 2026年第17周
后端·rust
whinc7 分钟前
Rust技术周刊 2026年第18周
后端·rust
whinc22 分钟前
Rust技术周刊 2026年第16周
后端·rust
jieyucx29 分钟前
Go语言深度解剖:Map扩容机制全解析(增量扩容+等量扩容+渐进式迁移)
开发语言·后端·golang·map·扩容策略
王码码20351 小时前
Go语言的内存管理:原理与实战
后端·golang·go·接口
Lee川1 小时前
打字机是怎么炼成的:Chat 流式输出深度解析
前端·后端·面试
Lee川1 小时前
Token 无感刷新与 Logout:前端安全会话管理实战
前端·后端·react.js
夕除2 小时前
springboot--06
数据库·spring boot·mybatis
舒一笑3 小时前
零后端、零数据库——我做了一个让 10000+ 人成功告白的开源工具
后端·产品·设计师
Java技术小馆3 小时前
如何零成本将各种 AI 编程工具接入免费大模型?
后端