Vert.x weekly roundup for Dec. 12, 2014

This is a totally new thing for me. I want to keep my ear to the ground with Vert.x, and what better way to force myself to be disciplined about it than to commit to a weekly blog entry? Let’s see if I can keep up with it.

What the Vert.x developer community was up to this week:

verxTim Fox started a discussion about release planning for Vert.x 3.0. Having been a casual observer over the past few months, I know they’ve been doing some innovative stuff that even I’m having trouble following. Getting it all locked down and packaged into a final release is going to force the community to crystallize it all. As it stands right now, they’re looking for a 3.0 beta at the end of January and a final release at the end of March.

Rajith started an effort to integrate AMQP into Vert.x so that Vert.x looks like any other AQMP message service. I understand this to be an event bus-type integration that Vert.x could play alongside any other message queuing technology that supports AMQP. Early in the week, Rajith was proposing something at the core level, but it looks like the community settled on keeping it a “citizen of ext.” Having Vert.x verticles sitting alongside a bunch of message queues seems to make some kind of natural sense, but I need to think about it more to fully grasp its implications.

Tim Fox introduced a CORS feature as well as a new verx-auth module, which currently uses LDAP (based on Apache Shiro for now). He’s looking to add database-/JDBC-based authentication/authorization later.

The community continued to discuss how they can make the modules marketplace a little more vibrant. While I suppose there’s a lot of ways of dealing with this, I think they’re being smart to focus on the current Maven repos. The community is trying to figure out how to automatically discover new modules out there in the repository universe that really belong in the modules catalog.

Oh, and the #vertx channel on IRC is now logged, so you can be just as voyeuristic as me.

New Vert.x job listings for the week:

There’s a senior software engineer posting in the Annapolis area that seems to require Vert.x experience and security clearance — interesting!

 

I don’t think Vert.x on OpenShift could be easier

verxIf you’re here, you already know how cool vert,x is, and you might be discovering how easy OpenShift makes your life.

Getting started with vert.x and OpenShift is so easy that this post isn’t even necessary, but I thought I’d point out some interesting features along the way.

First, create a new vert.x cartridge on OpenShift.

openshift-create-vertx

As of right now, OpenShift only supports vert.x 2.1, but it’s better than nothing. One thing I wonder about is how the autoscaling feature would work in terms of the vert.x event bus, the HA fail over stuff, or related scaling technology:

openshift-scaling

Second, clone the OpenShift repo on your local environment

git-clone-example

Easy.

That’s it. Now start coding

The cartridge comes out of the box with a server.js, which looks a lot like the starter examples on the vert.x site. I only really have two observations on it: First, I have issues with the team’s tab spacing (and js-lint would throw a fit). I’m only OCD about this one topic. However, I particularly like how the team thoughtfully added the ip and port variables and logic.

Because of this forethought, fresh off your git pull you can instantly see your verticle  simply by running vertx run server.js.

deployed-verticle

Cool, huh? Have fun out there.

Hello, World in vert.x with Java 8

Here’s a simple “Hello, World” example with Java 8 and vert.x:

I think this is a lot cleaner than the pre-Java 8 version, which looks like this:

I got to spend some quality time with vert.x while I was delayed in Las Vegas last night for six hours! Ugh. But Southwest is so cool and helpful, I can hardly complain.