[jboss-user] [Remoting] - Re: Is Http Firewall tunneling in Remoting or Messaging ?

fatbatman do-not-reply at jboss.com
Thu Nov 30 08:29:40 EST 2006


Well it's an applet on a public website, so it should work behind all types of firewall/proxy server, however fussy they are.

Regarding firewalls that prevent all but outgoing http requests; remoting doesn't have to use polling.  The client can make an http request that blocks on the server until there is data to be sent to the client, http keep-alive will keep the connection open (but you need a heartbeat message to check when this is dropped and reconnect).  This allows real time calls to be made from server to client without polling, even when the firewall only allows outgoing http connections. 
You would use a seperate connection for client to server calls.

This example shows the principle behind this, its using RMI but principle is the same;
http://wiki.java.net/bin/view/Communications/FirewalledClients 
This solution isn't very scalable though as you need a thread waiting for each client, a better solution would be to have something similar to the nio "Selector" so you don't need a thread per client, at least not for async callbacks.  
Saying that even this approach will fail with a few very awkward proxy servers, that cache data up only deliver it when there is more than say 16k to deliver.  In that case polling is the only option.  When establishing a connection it should perform some very quick tests to use whatever is possible.

Anyway, my point is as an application developer I don't want to be doing all this stuff, we just want a way of sending messages from client to server, and vice versa without having to worry about the protocol or the firewalls/proxies that are in the way.  From my understanding that is what JBoss remoting will eventually offer, am I right?


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3990018#3990018

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3990018



More information about the jboss-user mailing list