We have the same problem. APC is only the main suspect at the moment, because it is difficult to reproduce.
We use the Zend Framework w / session management, and the theory is that Zend code is cached in APC, and when the system is under heavy load, the code uses the previously cached SID instead of the current one.
Our protection is to store the session identifier inside the session data and compare the values when retrieving the session. If the identifiers are different, we destroy the session and end it.
source
share