2012-06-20 21 views
5

Iba a utilizar este Simple PHP Upload with a Progress Bar, y dice que necesito la extensión APC. Tengo dos opciones con APC, seguro para subprocesos y no seguro para subprocesos.¿Hay algún daño al utilizar una extensión segura para subprocesos (APC) en un entorno que no sea de subproceso? (PHP)

usando phpinfo, me parece que la seguridad de subprocesos está habilitada, pero no estoy seguro de si php se está ejecutando mutthreaded. Escuché que php todavía es un poco beta para mutithread.

De todos modos, si mi PHP no está multiproceso y no era "seguro para subprocesos", ¿habría problemas al usar una versión segura para subprocesos de APC?

tl; versión de dr: ¿Significa APC seguro para hilos (funciona tanto en php single/mutithread), o significa mutithread required (solo funciona en php mutithread)?

+2

Si PHP se compiló con seguridad de subprocesos, la extensión también debe haber sido. Si PHP no es seguro para subprocesos, la extensión debe ser también. La extensión no se cargará a menos que coincida, en cuyo caso obtendrá [un error como este] (http://stackoverflow.com/q/3271798/185544) (tenga en cuenta la discrepancia entre TS/NTS). Por lo tanto, necesita el APC seguro para subprocesos. – Wiseguy

Respuesta

6

si mi PHP no tiene multiprocesamiento y no era "seguro para subprocesos", ¿habría problemas al utilizar una versión de APC con seguridad de subprocesos?

Sí - no funcionará, punto. La seguridad del subproceso es una configuración de compilación que debe coincidir con PHP y todas las extensiones, de lo contrario no se pueden cargar. Here's an article que explica la diferencia con gran detalle.

Tenga en cuenta que además de la configuración TS/NTS, que también necesita la arquitectura de CPU (x86 vs x64) y la versión de Visual Studio utilizado para compilar (VC6 vs VC9) para que coincida con el fin de que una extensión para trabajar , y la versión de la extensión puede funcionar solo con una cierta versión principal de PHP.

Todo esto significa que puede ser bastante difícil conseguir el correcto binario precompilado de una extensión para que funcione con su instalación de PHP.

-2

Aconsejo usar la versión de seguridad de subprocesos. Si bien la versión no segura para subprocesos puede ser más rápida, si alguna vez PHP admite subprocesos (o sus extensiones sí), entonces tener esa compatibilidad adicional es una buena idea.

+0

Consulte la respuesta de Michael Borgwardt: las versiones de PHP sin hilos ni subprocesos, incluidas las extensiones, no son compatibles. – duskwuff

+0

Sí, lo tengo. No obstante, no me molesté en actualizar mi respuesta. –

Cuestiones relacionadas