• Project Reactor – 2013 by Pivotal • Reactive Streams Specifcation – 2014 collaboration by Netfix, Pivotal, Red Hat, Twitter, Typesafe and more. • reactor-spring • Spring 5
• @RequestMapping / @GetMapping / @PostMapping etc. • Flux instead of Collection • Functional Endpoints • Router Function • Handler Function • HandlerFilter Function
Reactive Support. • Streams will provide best experience until reactive JDBC and JPA is available. // Repository method Stream<LocationHistory> findByDateBetween( Date startDate, Date endDate); // Service method return Flux.fromStream(repository.findByDateBetween(s,e));
Pre transfer 0.005 Start Transfer 0.419 Total 0.532 Reactive Type Time Name lookup 0.004 Connect 0.005 Pre transfer 0.005 Start Transfer 0.385 Total 0.425
Preserves program structure • Safer concurrency • Simpler abstraction than RxJava without sacrifcing the power. • Facilitates good practice • Kotlin support in Core • Cons • Debugging complexity • Could not fnd any other negative comments
• Project Reactor Site - https://projectreactor.io/ • David Karnok's Blog - http://akarnokd.blogspot.co.za/ • WebFlux vs Servlet https://dzone.com/articles/raw-performance-numbers-spring-boot-2-webfux-vs-s Questions?