A personal and Java blog, likely only for me

Moday’s programming buzzwords – July 21th, 2014


Vert.x, C10k problem, Node.js, MongoDB.

Vert.x is a application platform, that claims to be lightweight and high performance, and it’s for the JVM. To summarize, is a Java (and JavaScript, CoffeeScript, Ruby, Python or Groovy) Async I/O platform.

Node.js is a platform built on Chrome’s JavaScript runtime. Once again, event-driven, non-blocking I/O model.

Both of them are intended for solving the C10k problem.

For doing so, they follow the Reactor Pattern. It consists in an event loop that waits for Events that are handle concurrently by delivering these events to the appropriate service handler.

The main differences between Vert.x and Node.js is that the former has several threads as event loops (one per core) and the latter has one thread only, besides, Vert.x has special components (called Worker Verticles) for writing blocking code (long-lived computationally intensive operation, calling third party components, as JDBC queries), so that you can avoid to block the event loop.

C10K problem is the problem of having to handle suddenly a thousand of clients at the same time with a server that has to handle only several requests as its normal task (I mean, it’s a huge waste to configure this server for an average of thousands of connections only for occasional peaks)

MongoDB is an open-source document database, NoSQL database. It claims to provide high performanc (fast reads and writes), high availability (with replicated servers), and easy scalability (with automatic sharding among the servers).

Author: Javier (@jbbarquero)

Java EE developer, swim addict, occasional videogames player, fan of Ben Alex and Shamus Young, and deeply in love with my wife. Sooner or later I'll dedicate a post to expand this simple introduction.

Leave a Reply

Required fields are marked *.