October 2018
Intermediate to advanced
556 pages
15h 18m
English
Along with Vert.x, another well-known web framework called Ratpack also provides support for Reactive Streams. In contrast to Vert.x, Ratpack offers direct support for Reactive Streams. For example, sending streams of logs in a Ratpack case looks like the following:
RatpackServer.start(server -> // (1) server.handlers(chain -> // chain.all(ctx -> { // Publisher<String> logs = logsService.stream(); // (2) ServerSentEvents events = serverSentEvents( // (3) logs, // event -> event.id(Objects::toString) // (3.1) .event("log") // .data(Function.identity()) // ); // ctx.render(events); // (4) }) ));
The key is as follows: