Cita: Lo que marco en negritas de tu comentario es donde tengo dudas, si cada petición me va a crear una conexión, de que me serviría el singletón?
En el Script php, puedes implimentar el singleton a la conexión de la base de datos para
garantizar que sólo se crea una conexión por petición , cada vez que se ejecuta el Script.
Cita: No habría una manera de evitar que en cada petición se hiciera una conexión??
Pues sinceramente tengo mis dudas y desconozco a ciencia cierta si es posible, y de ser posible no creo que fuese recomendable, aún que este ya sería un terreno pantanoso para mi.
Igualmente dicir que haciendo las cosas bien intentando no desperdiciar recursos, no debería suponer un problema este aspecto, pues hay miles de páginas trabajando así sin inconveniente alguno.
Generalmente en hosting compartidos (por lo menos los que he utilizado) suelen tener un límite de concurrencia (conexiones simultaneas) de entre 100 y 200. Si todo esta acorde con consultas optimizadas y se liberan los recursos tan pronto como dejan de ser necesarios, cada conexión no debería de durar más que unas centésimas o décimas de segundo (esto siempre es algo relativo y dependerá de que operaciones se necesiten hacer y otros factores, obviamente). Partiendo de esta base y tomando como media 0.5s por conexión desde que se habré hasta que se cierra, podemos atender una media de 200 a 400 por segundo. Para mi un número bastante aceptable para la gran mayoría de web.
Por hacer un cálculo burdo:
Tomando un valor bajo por ejemplo 32 conexiones simultaneas, una media de 1 segundo por conexión, en una hora podríamos atender: 32*3600=115200 peticiones