Vert.x

16
@diego_pacheco Software Architect | Agile Coach

description

Vert.x

Transcript of Vert.x

Page 1: Vert.x

@diego_pacheco

Software Architect | Agile Coach

Page 2: Vert.x

Tim Fox

Page 3: Vert.x

Performance

http://blog.arungupta.me/2014/02/undertow-benchmarks-wildfly/

Page 4: Vert.x

No Messaging(MOM), No Container!

Page 5: Vert.x

Based on JBoss Netty

Page 6: Vert.x

Similar to Node.JS but is not the same!

Page 7: Vert.x

Main Architecture

Page 8: Vert.x

Event Loop

Page 9: Vert.x

Polyglot

Page 10: Vert.x

Async APIs

• Http• Websockets• SockJS• FS• Event Bus• DNS• UDP• TCP/SSQL

Page 11: Vert.x

It`s all about Verticles

• Execution Unit• Single Threaded – Less scope for race conditions• Verticles communicate by message passing• Similar to actor model but is different

The Nervous System is the: Event Bus

• Verticles can send message over the event bus• Models: Point 2 point, Pub/Sub, Request/Response• Several Data types: String, Json, primitives, buffers• Event bus is extended to JavaScript clients as well• Cluster support (uses hazelcast)

Modules:

• MongoDB• Redis• JDBC• SMTP• Promises, RXJava and several others…

Page 12: Vert.x

FAT Jars Deploy!

Page 13: Vert.x

Some Code:

Page 14: Vert.x
Page 15: Vert.x

Event Bus: Async

Page 16: Vert.x

@diego_pacheco

Software Architect | Agile Coach

Obrigado!

Thank You!