Si 2 clientes llaman al servidor al mismo tiempo, es probable que el servidor pueda responder a ambos clientes casi simultáneamente. Los clientes aquí los defino a nivel de navegador.
Es decir que en la misma máquina, si está utilizando 2 navegadores para cargar el mismo sitio web/página al mismo tiempo, ambos deben cargarse al mismo tiempo.
Sin embargo, como estamos hablando de PHP, debe tomar notas especiales sobre las sesiones. Si sus páginas usan sesiones, el servidor solo sirve una página a la vez. Esto se debe a que el archivo de sesión se bloqueará, hasta que salga una secuencia de comandos.
Mire este ejemplo. Los 2 archivos se cargan desde la misma sesión, también conocido como el mismo usuario del navegador.
scripta.php requested scripta.php served
------+---+---------------------------------+------------------------>
scripta.php started
scriptb.php requested scriptb.php started
---------------+-------------------------------+-----------------+--->
scriptb.php served.
Observe que scriptb.php solo se inicia después de que se sirve scripta.php. Esto se debe a que cuando se inició scripta.php, el archivo de sesión se bloquea a otras secuencias de comandos para que scripta.php pueda escribir en el archivo de la sesión. Cuando se completa scripta.php, el archivo de sesión se desbloquea y, por lo tanto, otros scripts pueden usarlo. Por lo tanto, scriptb.php esperará hasta que se libere el archivo de sesión, luego bloqueará el archivo de sesión y lo usará.
Este proceso se repetirá para evitar que las secuencias de comandos múltiples que escriben en el mismo archivo de sesión causen retrasos. Por lo tanto, se recomienda llamar al session_write_close
() cuando ya no esté utilizando la sesión, especialmente en un sitio web que usa muchos iframes o AJAX.
También verifique esta respuesta: http://konrness.com/php5/how-to-prevent-blocking-php-requests/ – trante