Wednesday, 21 April 2010

Accessing Jetty on Ubuntu from another machine

OK, so following on from my previous blog post I thought I'd do some performance testing to see how Jetty compares with Apache. Installed VirtualBox on my Mac, downloaded and installed ubuntu 9.04 server edition with bridge networking so I could access it from the host - all painless. Installed apache2 - painless. Installed jmeter on the mac - painless. Ran some performance tests.

Looked to repeat the experiment against Jetty - aargh!! Just wasted 3 hours trying to work out why I couldn't connect to Jetty from the host. Turns out that the documentation, in Debian/Ubuntu at least, is wrong - when /etc/init.d/jetty claims that leaving JETTY_HOST blank will result in accepting connections from all hosts it's lying. You need to set it to or it will only be accessible from localhost ( You can tell this because if you do a netstat -an you will see this:

Proto Local Address State
tcp6 0 0 :::* LISTEN

that means the bind-address is localhost so the process is inaccessible outside the server. It should look like this:

Proto Local Address Foreign Address State
tcp6 0 0 :::8080 :::* LISTEN

Hope this helps some other poor confused person out there, took me a long time to Google this... there's a Debian issue here:

1 comment: