We have a Java web application that uses Spring and Hibernate and has a fairly standard architecture. Currently the application supports SOAP based clients in addition to a Flex GUI client that communicates via AFM/HTTP to a BlazeDS backend. Today the application runs only in Tomcat, but support for JBoss and Websphere is forthcoming.
We are now being to ensure that the application can run in a clustered environment for the purposes of scalability and failover. This question is primarily about the Java application server tier (rather than the database tier). Other than login session information that is managed by Spring Security, the application is stateless.
What do we need to consider when supporting a clustered environment?
Looking for any tips around logging, JNDI, configuration, file I/O, login sessions, etc. — anything!
1 Answer