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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot中集成EventBus可以通过以下步骤进行: 1. 添加EventBus依赖:在`pom.xml`文件中添加EventBus的依赖,例如: ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>30.1-jre</version> </dependency> ``` 2. 创建事件类:创建表示事件的类,例如: ```java public class MyEvent { private String message; public MyEvent(String message) { this.message = message; } public String getMessage() { return message; } } ``` 3. 创建事件监听器:创建事件监听器类,用于处理事件,例如: ```java @Component public class MyEventListener { @Subscribe public void handleEvent(MyEvent event) { // 处理事件逻辑 System.out.println("Received event: " + event.getMessage()); } } ``` 4. 配置EventBus:在Spring Boot的配置类中配置EventBus,例如: ```java @Configuration public class EventBusConfig { @Bean public EventBus eventBus() { return new EventBus(); } @Autowired public void setListeners(EventBus eventBus, MyEventListener listener) { eventBus.register(listener); } } ``` 5. 发布事件:在需要发布事件的地方,注入EventBus并发布事件,例如: ```java @Service public class MyService { @Autowired private EventBus eventBus; public void doSomething() { // 执行业务逻辑 // ... // 发布事件 eventBus.post(new MyEvent("Hello EventBus!")); } } ``` 这样,当`MyService`中的`doSomething`方法被调用时,会触发`MyEvent`事件,并由`MyEventListener`监听器处理该事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值