Connecting state and local government leaders
Quick: Guess which messaging protocol is best suited for large-scale cloud computing services.
Quick: Guess which messaging protocol is best suited for large-scale cloud computing services. If you have skills in service-oriented architecture, you'd probably say the Simple Object Access Protocol (SOAP), the Extensible Markup Language-based standard developed by the Organization for the Advancement of Structured Information Standards.
But at the recent O'Reilly Open Source Conference, Jive Software Chief Technology Officer Matt Tucker presented what he thinks is a far better messaging protocol, the Extensible Messaging and Presence Protocol. XMPP is the protocol used by the open-source Jabber Instant Message client to swap messages back and forth.
Surely, he must have been jesting. XMPP is great for instant messaging but not suited at all for enterprise-worthy cloud-based services.
Tucker argued otherwise. The problem with SOAP, he said, is that it just does not scale well. For one thing, it is a polling-based protocol: Every minute or so, a SOAP message is generated by one server to see if another server has any new data to download. 'It's impossible to scale massive cloud architectures if you have to rely on polling,' he said.
Each SOAP message, because it is written in XML, takes a fair amount of bandwidth, especially considering all the back-and-forth handshaking that must go on to guarantee data exchange.
By contrast, XMPP establishes a single connection between the two parties communicating, which cuts down the bandwidth required for communication. And it supports massive input/output, handling 'tens of thousands of messages per second' through a single server. And because XMPP federates easily ' meaning multiple servers can coordinate messages ' scaling upward is easy.
Tucker said plenty of work still needs to be done to outfit XMPP for more general and heavy-duty Web services work. The OpenFire open-source XMPP server software is a good place to start testing, he said. It has already been used by a number of online gaming companies, who use it to support communications across thousands of players. For more information, go to xmpp.org.
NEXT STORY: Editor's Desk | A Wiki for transition