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

相关推荐
bing_15811 分钟前
在 Spring Boot 项目中,如何进行高效的数据库 Schema 设计?
数据库·spring boot·后端·数据库schema设计
异世界_我是一名程序员17 分钟前
spring boot-MultipartFile 机制
后端
Aska_Lv22 分钟前
分布式锁---并发问题解决方案:分布式锁,以及不用锁方案
后端
Yharim27 分钟前
mybatis中一对一、多对多关联查询怎么实现
后端·mybatis
用户15294368495928 分钟前
谷歌云代理商:‌如何设置谷歌云服务器的防火墙规则?‌
后端
玛奇玛丶30 分钟前
面试官:MYSQL自增id超过int最大值怎么办?
后端·mysql
绝无仅有36 分钟前
Docker Compose 安装Elasticsearch8和kibana和mysql8和redis5 并重置密码的经验与总结
后端·面试·架构
程序员皮蛋鸽鸽1 小时前
从零配置 Linux 与 Windows 互通的开发环境
前端·后端
异常君1 小时前
揭秘 Spring 验证机制:为何@Validated 在 Controller 层生效却在 Service 层失效?
java·后端·spring