En pocas palabras, ¿hay algún tipo de mysqli_pconnect
de gran utilización PHP
& MySQL
servidores, o necesito seguir con mysql
no mejorado? Y si es así, ¿por qué lo eliminaron?mysqli conexión persistente
Respuesta
El soporte para esto se introdujo en PHP 5.3. Para versiones anteriores, PDO y, Dios no lo quiera, la extensión mysql son las únicas opciones.
citar el manual:
A diferencia de la extensión mysql, mysqli no proporciona una función separada para la apertura de las conexiones persistentes. Para abrir una conexión persistente, debe anteponer p: al nombre de host al conectarse.
No me molesto con las conexiones persistentes en MySQL. Las conexiones persistentes son para bases de datos como Oracle, en las que hacer una nueva conexión es mucho más lenta.
En MySQL, establecer una conexión es relativamente rápido (especialmente si desactiva las búsquedas DNS inversas). No debería haber necesidad de conexiones persistentes con MySQL. Si su aplicación es crítica para el rendimiento, hay muchas cosas que puede hacer con mayor rendimiento por su dinero que preocuparse por las conexiones persistentes.
Además, las conexiones persistentes vienen con efectos secundarios no deseados. Si usa variables de MySQL, tablas temporales, cambia el conjunto de caracteres de una conexión u olvida finalizar las transacciones, podría causar problemas. Por ejemplo, podría exponer los datos privados de un usuario a la sesión PHP de otro usuario porque deja una tabla temporal activa.
Lea la página del manual a la que he vinculado. Hay operaciones de limpieza después de cada solicitud de PHP. Pero sí, la mayoría de las veces el uso de conexiones persistentes no valdrá la pena. – Artefacto
Gracias, eso es tranquilizador. –
Actualmente hay persistent support para la biblioteca mysqli. Simplemente anteponga "p:" al nombre de host y listo.
¿cómo prefieres "p:" al nombre de host? ejemplo: \t \t \t $ this-> mysqli = new mysqli (mysql_host, mysql_user, mysql_password, mysql_database); –
@JavaNewb: perdón por resucitar un hilo antiguo, pero dejamos una pregunta sin respuesta. Yo "antepongo p:" con concatenación de cadenas. Ejemplo: $ this-> mysqli = new mysqli ('p:'. Mysql_host, mysql_user, mysql_password, mysql_database); –
Esta es una solución perfectamente buena. ¡Funcionó muy bien para mí! – zmonteca
- 1. Prueba de conexión php/mysqli
- 2. Conexión SMTP persistente en PHPMailer
- 3. Conexión persistente con el cliente
- 4. Conexión HTTP persistente con RestSharp
- 5. HTTP conexión persistente vs conexión de socket TCP
- 6. Cómo usar la conexión persistente de PDO?
- 7. Conexión persistente vía PHP a APNS
- 8. Conexión TCP persistente en la aplicación Rails
- 9. ¿Qué significa exactamente una "conexión persistente"?
- 10. Una conexión persistente con JDBC a MySQL
- 11. Persistente vs no persistente - ¿Qué debería usar?
- 12. ¿Cómo probar una conexión persistente en un servidor HTTP?
- 13. SignalR Conexión persistente dando 404 en eco/negociar
- 14. MySQL - Conexión persistente frente a la agrupación de conexiones
- 15. PHP y MySQLi()
- 16. ¿Cuál es la diferencia entre mysqli :: real_connect y el nuevo objeto mysqli en la conexión de la base de datos?
- 17. HttpURLConnection persistente en Java
- 18. mysqli insert_id()
- 19. Nuevo objeto Mysqli es nulo
- 20. Servicio persistente
- 21. persistente NSOperationQueue
- 22. Consultas asíncronas PHP MySQLi con
- 23. mysql_fetch_assoc en mysqli?
- 24. ¿Mysqli no está instalado?
- 25. Valor único Mysqli
- 26. prepare() vs query() mysqli
- 27. Dos mysqli consulta
- 28. mysqli, OOP vs Procedural
- 29. MySQLi: consulta VS prepare
- 30. SELECCIONAR * FROM en MySQLi
Entonces, para pre 5.3, ¿qué es un truco o una solución alternativa? – Pacerier