Mezcla de sesiones - apache httpd con mod_jk, tomcat, spring security - sirviendo datos de otro usuario

Recientemente nos hemos enfrentado a un problema serio, a un usuario se le entregaron datos de otro usuario. Este problema es casi imposible de reproducir.

Estamos utilizando la administración de usuarios registrados estándar proporcionada por Spring-security, y estamos seguros de que el problema no es el almacenamiento del usuario en una variable de instancia o cosas similares de concurrencia en nuestra aplicación.

Realmente dudamos que el problema esté en SpringSecurity o Tomcat.

Nuestro servidor frontal es apache httpd, conectado a tomcat a través del conector ajp (mod_jk). No estamos haciendo ningún balanceo de carga (httpd solo se preocupa por SSL, algunas url se reescriben y se sirven algunos módulos php)

Aquí está nuestra configuración:

## OS
OS Name:        Linux 
OS Version:     2.6.32-5-686
Architecture:   i386

## Apache httpd
Server version: Apache/2.2.16 (Debian)
Server built:   Sep  4 2011 20:27:42

## mod_jk
mod_jk/1.2.30 (installed via apt-get)

## JVM
JVM Version:    1.6.0_18-b18
JVM Vendor:     Sun Microsystems Inc.

## Tomcat
Server version: Apache Tomcat/6.0.28
Server built:   February 12 2011 1443

Culpamos a httpd / mod_jk de esta combinación de sesiones, por lo que nuestra única solución sería eliminar apache httpd. Pero antes de dejar esta configuración popular y ampliamente utilizada, nos gustaría saber si alguien ha enfrentado un problema similar.

Los únicos problemas similares que he encontrado estaban en carga equilibrada o mod_jk.

¿Alguna vez has enfrentado algún problema similar? Cualquier sugerencia, idea, enlace o experiencia será altamente apreciada. ¡Gracias!

Respuestas a la pregunta(5)

Su respuesta a la pregunta