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

相关推荐
止语Lab8 小时前
Go并发编程实战:Channel 还是 Mutex?一个场景驱动的选择框架
开发语言·后端·golang
小码哥_常9 小时前
Spring Boot一键限速:守护你的接口“高速路”
后端
阿丰资源9 小时前
基于SpringBoot的物流信息管理系统设计与实现(附资料)
java·spring boot·后端
王码码203510 小时前
Go语言的包管理:从GOPATH到Go Modules
后端·golang·go·接口
IT_陈寒12 小时前
Redis的内存溢出坑把我整懵了,分享这个血泪教训
前端·人工智能·后端
lhbian13 小时前
PHP、C++和C语言对比:哪个更适合你?
android·数据库·spring boot·mysql·kafka
Jasper_o14 小时前
MassTransit OutBox 不发送消息问题
后端·.net
掘金码甲哥14 小时前
glm模型这么火,咱们用vllm也咧一个呗
后端
邦爷的AI架构笔记14 小时前
踩坑3天后,我把公司的AI接口全换成了多模型路由——GPT-6和Claude Opus 4.7同时上线的这周
人工智能·后端
zhimingwen15 小时前
初探 Java 後端開發:解決 macOS 環境下 Spring Boot 項目啟動的各類「坑」
java·spring boot