A large part of the vert.x architecture is around the message bus, and message passing between verticals. The main idea I guess being that I can create multiple modules (possibly in multiple languages) that communicate via JSON messages that are sent over a message bus (hazelcast).I can imagine that building a message bus into the platform (vs. say, encouraging communication via JSON/REST APIs) encourages large applications, with loose coupling and isolation between modules. And I guess that's where I'm confused, because I don't see how this is better than, for example a system where you have relatively small/simple services (micro-services) that communicate over HTTP via REST interfaces.Am I missing something with respect to the benefits that Vert.x and it's message passing bring to the table? Motivation: I currently use node.js and think it's an awesome platform (but I don't like javascript the language so much), but I love clojure which recently got some Vert.x love, so I was checking Vert.x out.
vert.x message bus architecture
java;rest;node.js;clojure