Fresno: A Disruptor + Redis Queue¶
2022-05-02 16:07:27
架构图¶
源码¶
移步至 https://github.com/twentwo/fresno
用法¶
spring-boot application support
Maven¶
引入Maven包
<dependency>
<groupId>io.yec</groupId>
<artifactId>fresno-spring-boot-starter</artifactId>
<version>${fresno.version}</version>
</dependency>
EventHandler¶
定义 EventHandler
@EventHandler
public class OrderEventListener implements EventListener<Order> {
@Resource
private FooService fooService;
@Override
public void onEvent(EventQueue<Order> eventQueue, Event<Order> event) {
try {
fooService.getOrder(event.getObj());
} catch (Exception e) {
e.printStackTrace();
}
}
}
EventQueueReference¶
引用 EventQueue
@Service
public class FooServiceImpl implements FooService {
@EventQueueReference(belongTo = OrderEventListener.class)
private EventQueue<Order> orderEventQueue;
@Override
public void enQueueOrder(Order order) {
log.info("enQueueOrder :: {}", order);
orderEventQueue.enqueueToBack(order);
}
}