spring cloud bus发送刷新消息

47 阅读1分钟

spring cloud bus发送刷新消息

@RestController  
public class BusController {  
  
@Autowired  
private ApplicationEventPublisher publisher;  
  
@Autowired  
private BusBridge busBridge;  
  
@Autowired  
private BusProperties busProperties;  
@GetMapping("/send")  
public String send(){  
    RefreshRemoteApplicationEvent event = new RefreshRemoteApplicationEvent(this,busProperties.getId(),  
    "boot-integration");  
    //不仅发送本地,还发送mq  
    // publisher.publishEvent(event);  
    //直接发送给mq  
    busBridge.send(event);  
    return "success";  
    }  
}  

流程

//消费者  
BusConsumer:RemoteApplicationEvent: mq-消费者接收消息  
ApplicationEventPublisher  
RefreshListener:RefreshRemoteApplicationEvent: 本地刷新服务  
  
  
//生产者  
ApplicationEventPublisher:publish(RemoteApplicationEvent)  
RemoteApplicationEventListener  
BusBridge:向mq发送事件