We are preparing for migration from the following environment:
Apache 2.0.2 --AJP--> JBoss4.2.2
Apache 2.2.3 --???--> JBoss 5.1.0
How would you join the two together?
- Classic AJP (means building mod_jk for Apache)
- mod_proxy (forwarding HTTP requests to JBoss)
Option 2 is the most popular solution at the moment because it seems to mean less processing due to no-longer needing to translate JBoss's responses from AJP, and CPU time is something we need to keep a close eye on in our infrastructure. Options 2 and 3 also come with the Apache build supported by Red Hat.
At the moment I can't see us going for option 1, as we get AJP 'for free' with option 3.
Therefore, what are the pros and cons of options 2 and 3? Is the concern about CPU load really something that we need to worry about? What we lose in processing binary data (AJP traffic) do we get back in reduced bandwidth and IO?
Our infrastructure will be Apache fronting up-to 9 heavily-tuned JBosses (but usually around half that) all on the same RHEL 5 machine, which is virtualised in a private cloud.
Thanks in advance for any pointers/advice.