Top Banner
Vert.x 3: What’s new? Erwin de Gier #jfall15
19

Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Jan 05, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Vert.x 3: What’s new?Erwin de Gier

#jfall15

Page 2: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

github.com/erwindegnl.linkedin.com/in/erwindegier

Software Architect Open Source

Page 3: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Microservices Event Driven Scalable

Trends

Page 4: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Vert.x is a toolkit for creating reactive applications on the JVM, supporting

multiple development languages simultaneously.

Page 5: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Microservices Event Driven Scalable

Trends

Page 6: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

3

Vert.x-web

Page 7: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Java 8 only

• Fat Jar

• Vert.x Runtime

• Java, Javascript, Groovy, Ruby

• Event Bus

• Connectivity, Filesystem

Core API

Page 8: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• HTTP Server

• REST

• Event Bus Bridge (Websockets)

• Cookie management

• Security

Vert.x-web

Page 9: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Wrap Event Bus calls in a service

• Deploy Verticle somewhere

• Create proxy where needed

Event Bus Services

Page 10: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Async API’s

• MongoDB, JDBC, Redis, SQL

Persistence integration

Page 11: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Problem: test completes before code is finished

• Context for testing async code

• Async.complete()

• Context.fail()

Vert.x-unit

Page 12: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Dropwizard Metrics

• Measured (HttpServer, EventBus,etc.)

• JMX

• Registry

• Gauge, Counter, Histogram, Meter, Timer, etc.

Pluggable metrics

Page 13: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• SSH / Telnet

• Deploy, undeploy, list

• Metrics

• Event Bus interaction

• Extend with custom commands

Shell interaction

Page 14: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Looking for a Microservices toolkit?

Reactive, Scalable and Event Driven?

Needs to run on the JVM?

Page 15: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

Looking for a Microservices toolkit?

Reactive, Scalable and Event Driven?

Needs to run on the JVM?

Tim Fox: “Vert.x 3- be reactive on the JVM but not only in Java”

16 November 17:00 Amsterdam

Page 16: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

“please rate my talk in the

offical J-Fall app”

Vert.x 3.0: What’s new?Erwin de Gier

Page 17: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development
Page 18: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

• Reactive streams implementation

• Docker

• Openshift cartridge

• Deploy from Maven repo

• Mail, Stomp, JCA

There’s more

Page 19: Vert.x 3: What’s new? - edegier.nledegier.nl/presentations/vertx3-whatsnew.pdf · Vert.x is a toolkit for creating reactive applications on the JVM, supporting multiple development

https://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=plaintext

Performance