Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Performance Lento de PHP en SQL Server 2008

Estas en el tema de Performance Lento de PHP en SQL Server 2008 en el foro de SQL Server en Foros del Web. Hola! Acabo de migrar la base de datos de una aplicacion que tengo con PHP y MySQL a SQL Server 2008, el performance con MySQL ...
  #1 (permalink)  
Antiguo 03/03/2011, 19:57
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Performance Lento de PHP en SQL Server 2008

Hola!

Acabo de migrar la base de datos de una aplicacion que tengo con PHP y MySQL a SQL Server 2008, el performance con MySQL era bastante bastante bueno pero al pasar todo a SQL Server se alento todo el sistema, las llamadas a cada pagina tardan bastante a pesar de que lo tengo instalado de forma local.

La base de datos no la migre, la cree desde cero en el SQL server para no tener algun detalle y asegurarme de que los datos estuvieran correctos.

Alguien sabe porque puede pasar esto? . . .

Esta pregunta la hago en este foro de Base de Datos porque mientras estaba con MySQL trabaje perfecto, siento que el problema como tal es el SQL Server.

Mi aplicasion la tengo tanto en Windows Server 2008 como en Windows 7 Ultimate, la version de php es la ultima que se encuentra disponible . . . El servidor aun con 8 gb de ram no trabaja como queremos y mi equipo personal tiene un corei5 y 4 gb de ram asi que no creo que sea el hardware.

Espero alguien me pueda ayudar. Saludos
  #2 (permalink)  
Antiguo 06/03/2011, 10:49
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

¿Tienes indices creados en tus tablas?
__________________
MCTS Isaias Islas
  #3 (permalink)  
Antiguo 06/03/2011, 19:31
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Performance Lento de PHP en SQL Server 2008

mmmm . . . . no, eso puede ser una solución, no se me había ocurrido, aunq lo extraño es que aún con simples select * . . a tablas pequeñas se tarda, ya que realice pruebas sin poner estilo ni nada y aún asi se tarda considerablemente . . . Haré la prueba colocando los indices y de resolverse te diré en caso de que no sea eso, que otra cosa puede ser?
  #4 (permalink)  
Antiguo 06/03/2011, 23:38
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

antes de ejecutar tu query, setea
SET STATISTICS IO ON

Revisa las LECTURAS que esta haciendo

¿Cuanto es CONSIDERABLE para ti?, ¿Mas de 30 segundos?
__________________
MCTS Isaias Islas
  #5 (permalink)  
Antiguo 07/03/2011, 10:36
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Performance Lento de PHP en SQL Server 2008

Hola ya ejecute el seteo y me sale esto:

(164 row(s) affected)
Table 'nomtrab'. Scan count 1, logical reads 650, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

La verdad no se a que se refiere pero estuve haciendo pruebas con una base que tengo de un software de nominas y ese fue mi resultado, siento que es muy lenta la respuesta en el navegador para la cantidad de registros que son. De hecho a esa misma consulta le hice un SET STATISCS TIME ON una vez que lei y en si el problema a como veo no es el SQL las respuestas directas son en tiempo:

SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 0 ms.
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 25 ms.

(164 row(s) affected)
Table 'nomtrab'. Scan count 1, logical reads 641, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 260 ms.

Pero siento que el problema como tal es la interfaz entre SQL y PHP en tal caso no se donde postear la pregunta ya que no es problema ni de PHP porque funciona correctamente si trabaja con MySQL ni del SQL porque si realizo consultas directas en el SQL el trabajo es normal.

El tiempo que es considerable para mi viendo el trabajo de los dos sistemas al mismo tiempo en una pagina donde lo ni si quiera cargo una consulta es solo la variable de sesion pero mando llamar la conexion a la base de datos ya que en esa misma pagina tengo una autorespuesta, mi tiempo con MySQL es de menos de un segundo mientras que con el SQL Server se va a 4.68 segundos, eso es considerable, no?
  #6 (permalink)  
Antiguo 07/03/2011, 10:45
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

Te sugiero algo, que no te pases comparando la respuesta de MySQL con SQL Server, ya que son motores totalmente diferentes.

¿Puedes mostrarnos el query que estas ejecutando?
¿Puedes decirme si tu tabla nomtrab tiene indices?
¿Puedes decirme que EDICION de SQL Server 2008 manejas y con que SERVICE PACK?
__________________
MCTS Isaias Islas
  #7 (permalink)  
Antiguo 07/03/2011, 10:56
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Performance Lento de PHP en SQL Server 2008

Tienes razon . . . a ver respondo tus preguntas:

Consulta que estoy consultando:

select cvetra, nombre from nomtrab where cvetno='00005' and status='A'

La tabla si tiene indices; de hecho tiene 4.

Y estoy utilizando Microsoft SQL Server Developer Edition (64-bit) pero no tengo el SP instaldo viene como RTM.
  #8 (permalink)  
Antiguo 07/03/2011, 11:06
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

Tus indices, los cuatro, incluyen las columnas CVETNO y STATUS?????

Aplica de inmediato el correspondiente SP
__________________
MCTS Isaias Islas
  #9 (permalink)  
Antiguo 07/03/2011, 11:59
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Performance Lento de PHP en SQL Server 2008

Listo parece ser que quedo con la actualizacion aunque tambien mientras descargaba la actualizacion lei que había que activar en el Configuration Manager todas las opciones de TCP/IP y agregar el puerto en mi archivo de conexion de php asi que doy por cerrado el tema.

Muchas gracias iislas por la ayuda, por cierto solo me queda una duda, preguntabas que si los indices incluian a mis columnas y solo es la de cvetno, en que me puede afectar o porque la pregunta?
  #10 (permalink)  
Antiguo 07/03/2011, 12:12
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

En que tus busquedas haran un SCAN sobre tus registros, ¿no quires que sean lentas?, dice la teoria, que TODAS las columnas despues del WHERE, son candidatas a ser indices.

Por cierto, el SERVICE PACK, no solo hay que bajarlo, HAY QUE APLICARLO
__________________
MCTS Isaias Islas
  #11 (permalink)  
Antiguo 07/03/2011, 12:21
Avatar de lord_clown  
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Performance Lento de PHP en SQL Server 2008

haaa ya entendi el punto . . .

Si lo se ya quedo instalado y todo. Por eso dije que ya quedo . . . De hecho ya segui probando todo el performance del sistema y esta de lujo aun viendolo via internet.

Pero bueno, muchas gracias por la ayuda Isaias.

Saludos
  #12 (permalink)  
Antiguo 07/03/2011, 12:28
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Performance Lento de PHP en SQL Server 2008

De nada.........
__________________
MCTS Isaias Islas

Etiquetas: lento, performance, php, server, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:05.