I'm primarily a Java developer, and I come to you with a question that straddles the divide between developers and sysadmins.
Years ago, when it was a novel thing to run Tomcat as an app server, it was customary to front it with Apache. As I understand it, this was done because:
- Java was considered "slow", and it was helpful to have Apache serve static content directly.
- Tomcat couldn't listen to ports 80/443 unless run as root, which was dangerous.
Java is no longer considered slow, and I doubt adding Apache to the mix will actually help speed things up.
As for the ports issue, there are probably simpler ways to connect app servers to ports 80/443 these days.
So my question is- is there really any benefit to fronting Java Webapps with Apache these days? If so, is Apache still the way to go? Should I look at Nginx? Instead of Tomcat I'm using Glassfish, if that matters.