Eclipse Vert.x at BruJUG 2019

Eclipse Vert.x at BruJUG 2019

50a17cd98aab2cc4d8e144741e11b1b7?s=128

Julien Ponge

June 19, 2019
Tweet

Transcript

  1. Julien Ponge @jponge Principal Software Engineer, PhD

  2. Reactive? (because resources are scarce)

  3. None
  4. Application

  5. Reactive systems Reactive streams Reactive programming Reactive “Responding to stimuli”

    Manifesto, Actor, Messages Resilience, Elasticity, Scalability, Asynchronous, non-blocking Data flow Back-pressure Non-blocking Data flow Events, Observable Spreadsheets Akka, Vert.x Akka Streams, RxJava, Reactor, Vert.x Reactor, Reactive Spring, RxJava, Vert.x
  6. while (isRunning) { String line = bufferedReader.readLine(); switch (line.substring(0, 4))

    { case "ECHO": bufferedWriter.write(line); break // ... // other cases ( ...) // ... default: bufferedWriter.write("UNKW Unknown command"); } }
  7. x 1000 =

  8. Virtual machines, Containers, etc

  9. None
  10. (demo)

  11. Vert.x? (async all the things!)

  12. mtpvertx 40% (all Manning)

  13. Eclipse Vert.x Open source project started in 2012 Eclipse /

    Apache licensing A toolkit for building reactive applications for the JVM ~10k ⋆ on Built on top of https://vertx.io @vertx_project
  14. Http server verticle Database client verticle  Event Bus “Details

    for user 1234?” “{data}” 4 instances 1 instance
  15. Events Thread Event Loop

  16. Callbacks RxJava 1 + 2 Quasar (vertx-sync) Kotlin coroutines (core)

    (codegen) CompletionStage
  17. None
  18. (demo time) APIs with Mongo Edge service with RxJava2 Event

    streaming with Kafka + web “Connected tires / IoT”
  19. Outro

  20. Unified end-to-end reactive model + ecosystem (not just APIs…) For

    all kinds of distributed applications (even the small-scale ones) Flexible toolkit, not a framework (your needs, your call)
  21. Asynchronous programming

  22. Single threaded event processors vs multi-threaded components

  23. Do you really need these anaemic POJOs / DTOs?

  24. Not everything has to be annotations!

  25. Powered by and more!

  26. mtpvertx 40% (all Manning)