Vert.x is a polyglot, non-blocking, event-driven application platform that runs on the JVM.
Some of the key highlights include:
-
Polyglot. You can write your application components in JavaScript, Ruby, Groovy, Java or Python, and you can mix and match several programming languages in a single application.
-
Simple actor-like concurrency model. Vert.x allows you to write all your code as single threaded, freeing you from many of the pitfalls of multi-threaded programming. (No more
synchronized
,volatile
or explicit locking). -
Vert.x takes advantage of the JVM and scales seamlessly over available cores without having to manually fork multiple servers and handle inter process communication between them.
-
Vert.x has a simple, asynchronous programming model for writing scalable non-blocking applications that can scale to 10s, 100s or even millions of concurrent connections using a minimal number of operating system threads.
-
Vert.x includes a distributed event bus that spans the client and server side so your applications components can communicate easily. The event bus even penetrates into in-browser JavaScript allowing you to create effortless so-called real-time web applications.
-
Vert.x provides real power and simplicity, without being simplistic. Configuration and boiler-plate is kept to a minimum.
-
Vert.x includes a powerful module system and public module registry, so you can easily re-use and share Vert.x modules with others.
-
Vert.x can be embedded in your existing Java applications.
Please see the website for full documentation and information on vert.x