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

相关推荐
Java成神之路-12 小时前
Spring AOP 核心进阶:切入点表达式 + 通知类型 + 环绕通知避坑指南(Spring系列8)
java·后端·spring
清汤饺子12 小时前
Cursor + Claude Code 组合使用心得:我为什么不只用一个 AI 编程工具
前端·javascript·后端
无责任此方_修行中13 小时前
Redis 的"三面"人生:开源世界的权力转移
redis·后端·程序员
写Cpp的小黑黑13 小时前
时间同步(无需NTP):以time.is网站为例
后端
木子欢儿13 小时前
在 Fedora 上配置 Go 语言(Golang)开发环境
开发语言·后端·golang
coNh OOSI14 小时前
Spring Boot问题总结
java·spring boot·后端
掘金者阿豪14 小时前
行标识符的抉择:深入理解数据库领域的OID与ROWID机制
后端
她说..14 小时前
Java Object类与String相关高频面试题
java·开发语言·jvm·spring boot·java-ee
计算机学姐14 小时前
基于SpringBoot的宠物店管理系统
java·vue.js·spring boot·后端·spring·java-ee·intellij-idea
无心水14 小时前
22、Java开发避坑指南:日期时间、Spring核心与接口设计的最佳实践
java·开发语言·后端·python·spring·java.time·java时间处理