In association with heise online

10 May 2012, 16:47

Vert.x offers event-driven framework for the JVM

  • Twitter
  • Facebook
  • submit to slashdot
  • StumbleUpon
  • submit to reddit

Vert.x icon Version 1.0 of the Vert.x event-driven framework for asynchronous, scalable and concurrent software has been released. Unlike node.js, which is built around the V8 JavaScript engine, Vert.x uses the Java Virtual Machine as its runtime environment.

The developers feel that the platform offers a polyglot option to node.js while also leveraging the JVM for better performance and scaling over cores. The JVM-based framework allows developers to use Java, Ruby, Groovy and JavaScript applications to create Vert.x applications through an API exposed by the run-time. Scala, Clojure and Python compatible APIs are in development.

The framework also has extensive network connectivity, with TCP/SSL and HTTP/HTTPS servers and clients, and WebSockets and SockJS support. A distributed event bus also allows events to occur and be acted on in the server and in the JavaScript web client for "real-time" web applications.

Zoom A simple web server in JavaScript using Vert.x
Source: Vert.x

Vert.x is built around a "super simple" concurrency model which can allow code to be rewritten as a single-threaded application and removes the need for explicit locking or synchronisation. The system also offers the ability to scale seamlessly over available cores without forking multiple processes by exploiting the JVM's scaling abilities. Other features include a MongoDB-based persistor for data storage.

Tim Fox, lead developer on Vert.x, is a Senior Staff Engineer at VMWare and Vert.x development is sponsored by VMware. The focus of future application development will be on mobile and embedded applications which need large amounts of scaling, with an emphasis on being used in any JVM-hosted language. An embedded version of the platform is also available to add the async framework handling to existing applications.

The code is licensed under the Apache 2 Licence. Preliminary testing serving static files showed that, where Node.js could serve around 5,000 requests per second, Vert.x with Java was capable of over 35,000. The Vert.x site includes extensive introductions and tutorials for JavaScript, Ruby and Groovy, while the project's GitHub repository includes a number of examples.


Print Version | Send by email | Permalink:

  • July's Community Calendar

The H Open

The H Security

The H Developer

The H Internet Toolkit