Estoy usando cakephp para ejecutar una aplicación multi-tenant. Solo hay 1 instancia de la aplicación, la única diferencia es la base de datos a la que se conecta cada aplicación. Aparte de eso, la aplicación es idéntica.Aislamiento de caché APC en una configuración tentant múltiple (cakephp)
Mi configuración:
- Apache 2.2
- PHP 5.3
- torta 1.3.10
servidor 2k3 Win
tengo la aplicación desplegada bajo docroot de Apache (justo 1 instancia de la aplicación se está ejecutando). Recientemente cambié de File a caché de APC. Los prefijos de archivo para el almacenamiento en caché son los mismos para ambas aplicaciones. Usando Apache Hosts Virtuales para decidir a qué aplicación ir. Estoy almacenamiento en caché estática html/js/css/gif, pero no php (a través de mod_expires de Apache)
Problema:
me di cuenta de que algunos de los valores almacenados en caché que se suponía iban a estar a disposición de La APLICACIÓN 1 se mostraba en el menú desplegable de la Aplicación 2. Me sorprendió ver que esto sucediera.
¿Cómo puedo agregar aislamiento en la capa de caché de APC entre las aplicaciones?
ACTUALIZACIÓN: problema ocurre incluso si hago una nueva copia de la aplicación y la puse en su propia docroot !!!
Update2
Escenario 1) 1 instancia que tiene toda la ondulación permanente/peine
Si tengo código php como
if(client=="client1") {
$options = array(opt1,opt2);
}else if(client=="client2") {
$options = array(opt3,opt4);
}
y este código es compartido tanto por el cliente 1 y cliente 2, ¿cómo afectará esto el almacenamiento en caché de APC?
Escenario 2) 2 cada instancia personalizarse por cliente
client1.php
$options = array(opt1,opt2);
client2.php
$options = array(opt3,opt4);
Cómo afecta esto a la memoria caché de APC? Si entiendo bien, para el Escenario 1, es posible tener una mezcla de datos cliente1 con el cliente 2 (muy malo) Para el Escenario 2, siempre que use diferentes claves de caché, ¿estoy seguro de que nunca tendré una confusión?
Gracias por la Memcache por IP: idea de puerto, pero ¿qué pasa con el caché de código de operación? – aks